Coder Social home page Coder Social logo

pjlab-adg / detzero Goto Github PK

View Code? Open in Web Editor NEW
298.0 298.0 29.0 2.68 MB

[ICCV 2023] DetZero: Rethinking Offboard 3D Object Detection with Long-term Sequential Point Clouds

Home Page: https://superkoma.github.io/detzero-page/

License: Apache License 2.0

Python 81.65% Shell 0.08% C++ 6.57% Cuda 11.32% C 0.39%

detzero's People

Contributors

superkoma avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

detzero's Issues

track eval error?

Hi, thank you for sharing the great work.
I met the error below.
image

    exec(code, run_globals)
  File "/SHFP12/xiaoquan.wang/01_bev/DetZero/tracking/tools/eval_track_my.py", line 50, in <module>
    main()
  File "/SHFP12/xiaoquan.wang/01_bev/DetZero/tracking/tools/eval_track_my.py", line 47, in main
    evaluation.get_tracklet_recall()
  File "/defaultShare/SHFP12/xiaoquan.wang/01_bev/DetZero/tracking/detzero_track/utils/track_recall.py", line 68, in get_tracklet_recall
    eval_results = multi_processing(
  File "/defaultShare/SHFP12/xiaoquan.wang/01_bev/DetZero/utils/detzero_utils/common_utils.py", line 302, in multi_processing
    results = [function(x) for x in progress_bar]
  File "/defaultShare/SHFP12/xiaoquan.wang/01_bev/DetZero/utils/detzero_utils/common_utils.py", line 302, in <listcomp>
    results = [function(x) for x in progress_bar]
  File "/defaultShare/SHFP12/xiaoquan.wang/01_bev/DetZero/tracking/detzero_track/utils/track_recall.py", line 171, in eval_single_seq
    frame_pred_data = tracklets_to_frames({'reference':gt_data, 'source':pred_data})
  File "/defaultShare/SHFP12/xiaoquan.wang/01_bev/DetZero/tracking/detzero_track/utils/data_utils.py", line 40, in tracklets_to_frames
    sample_idx = obj_data['sample_idx']
KeyError: 'sample_idx'
  0%|                                                                                                                 | 0/2 [04:37<?, ?it/s]

The running script is below.
python eval_track_my.py
image

Reverse time order Tracking

Hi, Thanks for sharing the code. When I look into the tracking module, I notice that the default score threshold for first stage tracking is 0.1 while the detection output score threshold is 0.03. So for second stage only objects between 0.03 and 0.1 are considered. However in Reverse time order tracking it only run stage two which will only consider objects between 0.03 and 0.1. Is it what the detzero tracking designed for or it's a bug which originally should use two stage tracking as well or only use stage one tracking?

waymo data processing

Hi, when I run the python -m detzero_det.datasets.waymo.waymo_preprocess --cfg_file tools/cfgs/det_dataset_cfgs/waymo_one_sweep.yaml --func create_waymo_infos to generate infos, it gets stuck with no response. Is it normal? If it is, approximately how long dose it take to process the data? Looking forward to your reply.

image

use gt annotations to assign labels for each object track

Dear authors, thank you for your great work.
When I wanna to run it on Waymo Open Dataset, i have found the problem:

b. run tracking model in target assign mode (use gt annotations to assign labels for each object track)
cd DetZero/tracking/tools &&
python -u run_track.py --cfg_file cfgs/tk_model_cfgs/waymo_detzero_track.yaml --data_path <PATH_TO_DETECTION_RESULT> --workers <WORKER_NUM> --split

In this step, the input is the detection result <PATH_TO_DETECTION_RESULT> , and why is it not DetZero/data/waymo/waymo_infos_train.pkl ?

Anyone reproduce the results in the paper?

Thanks for the great work!

I am reproducing the whole project, but I found the reproduced results are far from the expected, and I have some questions.

  1. How to train the detector? Could you provide a detailed script as the paper described?
  2. The detector is coupled with the tracking parameters? I converted my detection results with the required format, but the tracking results lag behind the expected results.
  3. Why the GRM module does not use the sigmoid to force the final result larger than zero? I found this problem because my GRM results have some refined size smaller than zero.

Environment installation requires python3.9

Configure the environment according to the install.md document, execute pip install waymo-open-dataset-tf-2-5-0, the following error will be reported
image
The python dependency version should be changed to Python3.9
Should it be modified install.md

Model weight for inference

I am a current student and I am very interested in your research. I wonder if you can provide me with the model weights for training in private. Can you send them to me in my education email, thank you!

KeyError: 'Cyclist'

here is the error when I use the detection module to train.
Traceback (most recent call last):
File "train.py", line 215, in
main()
File "train.py", line 112, in main
train_set, train_loader, train_sampler = build_dataloader(
File "/home/lzc/DetZero/detection/detzero_det/datasets/init.py", line 44, in build_dataloader
dataset = all[dataset_cfg.DATASET](
File "/home/lzc/DetZero/detection/detzero_det/datasets/waymo/waymo_dataset.py", line 21, in init
super().init(dataset_cfg, class_names, training, root_path, logger)
File "/home/lzc/DetZero/detection/detzero_det/datasets/dataset.py", line 40, in init
self.data_augmentor = self.init_data_augmentor()
File "/home/lzc/DetZero/detection/detzero_det/datasets/waymo/waymo_dataset.py", line 42, in init_data_augmentor
data_augmentor = DataAugmentor(
File "/home/lzc/DetZero/detection/detzero_det/datasets/augmentor/data_augmentor.py", line 24, in init
cur_augmentor = getattr(self, cur_cfg.NAME)(config=cur_cfg)
File "/home/lzc/DetZero/detection/detzero_det/datasets/augmentor/data_augmentor.py", line 28, in gt_sampling
db_sampler = database_sampler.DataBaseSampler(
File "/home/lzc/DetZero/detection/detzero_det/datasets/augmentor/database_sampler.py", line 27, in init
[self.db_infos[cur_class].extend(infos[cur_class]) for cur_class in class_names]
File "/home/lzc/DetZero/detection/detzero_det/datasets/augmentor/database_sampler.py", line 27, in
[self.db_infos[cur_class].extend(infos[cur_class]) for cur_class in class_names]
KeyError: 'Cyclist'

What should I do?

the processing time of waymo infos

hello, when i run the code of

cd detection
python -m detzero_det.datasets.waymo.waymo_preprocess --cfg_file tools/cfgs/det_dataset_cfgs/waymo_one_sweep.yaml --func create_waymo_infos

The program output log stayed in this interface for a long time, could you please tell me how long of the porcessing on waymo infos?
image

and the gpu memory i used is shown as below:
image

Has the author tried returning to velocity in centerhead?

DENSE_HEAD:
    NAME: CenterHead
    CLASS_AGNOSTIC: False

    CLASS_NAMES_EACH_HEAD: [
        ['Vehicle', 'Pedestrian', 'Cyclist']
    ]

    SHARED_CONV_CHANNEL: 64
    USE_BIAS_BEFORE_NORM: True
    NUM_HM_CONV: 2
    IOU_WEIGHT: 1
    SEPARATE_HEAD_CFG:
        HEAD_ORDER: ['center', 'center_z', 'dim', 'rot', 'vel', 'iou']
        HEAD_DICT: {
            'center': {'out_channels': 2, 'num_conv': 2},
            'center_z': {'out_channels': 1, 'num_conv': 2},
            'dim': {'out_channels': 3, 'num_conv': 2},
            'rot': {'out_channels': 2, 'num_conv': 2},
            'vel': {'out_channels': 2, 'num_conv': 2},
            'iou': {'out_channels': 1, 'num_conv': 2},
        }

    TARGET_ASSIGNER_CONFIG:
        FEATURE_MAP_STRIDE: 8
        NUM_MAX_OBJS: 500
        GAUSSIAN_OVERLAP: 0.1
        MIN_RADIUS: 2

    LOSS_CONFIG:
        LOSS_WEIGHTS: {
            'cls_weight': 1.0,
            'loc_weight': 2.0,
            'code_weights': [1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 0.2, 0.2]

I added velocity to the centerhead in the configuration file, referring to the source code of Centerpoint. However, the detector results are basically the same for pedestrians, but the vehicle is 10 points behind. Has the author tried adding velocity detection?

Problem in parsing waymo dataset

I attempted to download the Waymo dataset from the official website, but encountered the following bug while parsing the data.

Traceback (most recent call last):
File "/home/longk/anaconda3/envs/detzero/lib/python3.8/runpy.py", line 194, in _run_module_as_main
return _run_code(code, main_globals, None,
File "/home/longk/anaconda3/envs/detzero/lib/python3.8/runpy.py", line 87, in _run_code
exec(code, run_globals)
File "/mnt/disk8Tone/longkai/DetZero/detection/detzero_det/datasets/waymo/waymo_preprocess.py", line 241, in
create_waymo_infos(
File "/mnt/disk8Tone/longkai/DetZero/detection/detzero_det/datasets/waymo/waymo_preprocess.py", line 70, in create_waymo_infos
waymo_infos_train = get_infos_worker(
File "/mnt/disk8Tone/longkai/DetZero/detection/detzero_det/datasets/waymo/waymo_preprocess.py", line 36, in get_infos_worker
sequence_infos = list(tqdm(executor.map(process_single_sequence, sample_sequence_file_list),
File "/home/longk/anaconda3/envs/detzero/lib/python3.8/site-packages/tqdm/std.py", line 1182, in iter
for obj in iterable:
File "/home/longk/anaconda3/envs/detzero/lib/python3.8/concurrent/futures/_base.py", line 619, in result_iterator
yield fs.pop().result()
File "/home/longk/anaconda3/envs/detzero/lib/python3.8/concurrent/futures/_base.py", line 444, in result
return self.__get_result()
File "/home/longk/anaconda3/envs/detzero/lib/python3.8/concurrent/futures/_base.py", line 389, in __get_result
raise self._exception
File "/home/longk/anaconda3/envs/detzero/lib/python3.8/concurrent/futures/thread.py", line 57, in run
result = self.fn(*self.args, **self.kwargs)
File "/mnt/disk8Tone/longkai/DetZero/detection/detzero_det/datasets/waymo/waymo_utils.py", line 206, in process_single_sequence_and_save
process_single_tfrecord_multiprocessing(
File "/mnt/disk8Tone/longkai/DetZero/detection/detzero_det/datasets/waymo/waymo_utils.py", line 250, in process_single_tfrecord_multiprocessing
for cnt, data in enumerate(dataset):
File "/home/longk/anaconda3/envs/detzero/lib/python3.8/site-packages/tensorflow/python/data/ops/iterator_ops.py", line 761, in next
return self._next_internal()
File "/home/longk/anaconda3/envs/detzero/lib/python3.8/site-packages/tensorflow/python/data/ops/iterator_ops.py", line 744, in _next_internal
ret = gen_dataset_ops.iterator_get_next(
File "/home/longk/anaconda3/envs/detzero/lib/python3.8/site-packages/tensorflow/python/ops/gen_dataset_ops.py", line 2728, in iterator_get_next
_ops.raise_from_not_ok_status(e, name)
File "/home/longk/anaconda3/envs/detzero/lib/python3.8/site-packages/tensorflow/python/framework/ops.py", line 6941, in raise_from_not_ok_status
six.raise_from(core._status_to_exception(e.code, message), None)
File "", line 3, in raise_from
tensorflow.python.framework.errors_impl.NotFoundError: /mnt/disk8Tone/longkai/DetZero/data/waymo/raw_data/segment-1005081002024129653_5313_150_5333_150_with_camera_labels_with_camera_labels.tfrecord; No such file or directory [Op:IteratorGetNext]

I removed '_with_camera_labels.tfrecord' from the line sequence_file_tfrecord = sequence_file[:-9] + '_with_camera_labels.tfrecord'

how to visualize the tracking result

hello, could please provide the markdown which descripts the visulization of tracking results (after tracking module and after the refinement module)

GPU and GPU memery

Very good works you done!
For better evaluation and estimation on your models, could you share what GPU you used, which seems not mentioned in your paper, and also the approximate memory occupied by each GPU?

Daemon / Refine for training set

I split train set in daemon, which PATH_TO_TRACKING_RESULT should be use. Because in tracking and detection part, the code only generate the val result. Should I generate result for training set?.

cd DetZero/daemon &&
python prepare_object_data.py --track_data_path <PATH_TO_TRACKING_RESULT> --split train

近距离优化结果

你好,是否可以提供下你优化前后近距离0-30米的性能对比呢,

tracking-kalman_filter

.tracking/detzero_track/models/tracking_modules/kalman_filter/kalman_filter.py
line34: self.bbox = np.zeros((bbox.shape[0]+2), dtype=np.float32)

TTA error when batch_size is set more than 1?

Setting batch_size to 2 when running "test.py"(config file is tools/cfgs/det_model_cfgs/centerpoint_1sweep.yaml).There is an error in 16th line of "detzero_det/utils/ensemble_utils/wbf_3d.py".

The reson of the error is that shapes of boxes、scores and labels are not matched.
(boxes [bs,ops_ num,max_proposals_num,dims_num]、scores [bsops_num, max_proposals_num, 1]、labels [bsops_num, max_proposals_num, 1])

What`s more, I found 206th line of "detzero_det/models/centerpoint.py" is not worked because the first dim of boxes is not 1 when batch_size settings is more than 1. I'm not sure if the original idea for 206th line was to use "reshape" or "view".
However, if I changed 206th line with "reshape" or "view", there will be another issue that TTA will perform WBF on all proposals in batch.

I`m not sure whether my thoughts are right. Maybe there are some other thoughts about that.
Thank you for your time and consideration. I look forward to your response at your convenience.

Apply to custom dataset

Hello, thanks for sharing this awesome work !
I have a question, is this work be able to apply on custom dataset ?
Would you provide pretrained weights and the detail of how we can get the inference results ?
Many thanks.

AttributeError: 'str' object has no attribute 'exists'

023-10-19 06:32:41,967 INFO Total samples for Waymo dataset: 0
---------------The waymo sample interval is 1, total sequecnes is 1-----------------
0%| | 0/1 [00:00<?, ?it/s]
Traceback (most recent call last):
File "/opt/conda/envs/detzero/lib/python3.8/runpy.py", line 194, in _run_module_as_main
return _run_code(code, main_globals, None,
File "/opt/conda/envs/detzero/lib/python3.8/runpy.py", line 87, in _run_code
exec(code, run_globals)
File "/mnt/update/DetZero/detection/detzero_det/datasets/waymo/waymo_preprocess.py", line 241, in
create_waymo_infos(
File "/mnt/update/DetZero/detection/detzero_det/datasets/waymo/waymo_preprocess.py", line 90, in create_waymo_infos
waymo_infos_val = get_infos_worker(
File "/mnt/update/DetZero/detection/detzero_det/datasets/waymo/waymo_preprocess.py", line 36, in get_infos_worker
sequence_infos = list(tqdm(executor.map(process_single_sequence, sample_sequence_file_list),
File "/opt/conda/envs/detzero/lib/python3.8/site-packages/tqdm/std.py", line 1182, in iter
for obj in iterable:
File "/opt/conda/envs/detzero/lib/python3.8/concurrent/futures/_base.py", line 619, in result_iterator
yield fs.pop().result()
File "/opt/conda/envs/detzero/lib/python3.8/concurrent/futures/_base.py", line 444, in result
return self.__get_result()
File "/opt/conda/envs/detzero/lib/python3.8/concurrent/futures/_base.py", line 389, in __get_result
raise self._exception
File "/opt/conda/envs/detzero/lib/python3.8/concurrent/futures/thread.py", line 57, in run
result = self.fn(*self.args, **self.kwargs)
File "/mnt/update/DetZero/detection/detzero_det/datasets/waymo/waymo_utils.py", line 200, in process_single_sequence_and_save
if pkl_file.exists():
AttributeError: 'str' object has no attribute 'exists'

Error when using TTA strategy for test: box and score lengths are not equal

When I run test using the TTA strategy I get an error:
python test.py --cfg_file cfgs/det_model_cfgs/centerpoint_1sweep.yaml --ckpt <PATH_TO_CKPT> --set DATA_CONFIG.TTA True

Exception has occurred: ValueError
Length of boxes not equal to length of scores.
File "/workspace/DetZero/detection/detzero_det/utils/ensemble_utils/wbf_3d.py", line 16, in prefilter_boxes
raise ValueError("Length of boxes not equal to length of scores.")
File "/workspace/DetZero/detection/detzero_det/utils/ensemble_utils/wbf_3d.py", line 151, in weighted_boxes_fusion_3d
filtered_boxes = prefilter_boxes(boxes_list, scores_list, labels_list, weights, skip_box_thr)
File "/workspace/DetZero/detection/detzero_det/utils/ensemble_utils/ensemble.py", line 17, in wbf_online
boxes, scores, labels = weighted_boxes_fusion_3d(
File "/workspace/DetZero/detection/detzero_det/models/centerpoint.py", line 207, in test_time_augment
boxes, scores, labels = wbf_online(boxes, scores, labels)
File "/workspace/DetZero/detection/detzero_det/models/centerpoint.py", line 299, in post_processing
final_boxes, final_scores, final_labels = self.test_time_augment(batch_dict, pred_dicts)
File "/workspace/DetZero/detection/detzero_det/models/centerpoint.py", line 38, in forward
pred_dicts, recall_dicts = self.post_processing(batch_dict)
File "/workspace/DetZero/detection/tools/eval_utils.py", line 73, in eval_one_epoch
result = model(batch_dict)
File "/workspace/DetZero/detection/tools/test.py", line 68, in eval_single_ckpt
eval_utils.eval_one_epoch(
File "/workspace/DetZero/detection/tools/test.py", line 203, in main
eval_single_ckpt(model, test_loader, args, eval_output_dir, logger, epoch_id, dist_test=dist_test)
File "/workspace/DetZero/detection/tools/test.py", line 207, in
main()
ValueError: Length of boxes not equal to length of scores.

Checkpoint of the model

Hello, thank you very much for your excellent work. I am currently working on a ground truth system for autonomous driving, and I found your article on offline labeling and tracking extremely helpful. I would greatly appreciate it if you could provide the checkpoint for the model. Thank you very much.

Large performance gap between the validation and test sets

Thanks for releasing the codes of this excellent work.

I've observed that the L2 mAPH on the validation set is 81.7, whereas the L2 mAP on the test set is 85.15. According to my experience, If we use the same model for both Waymo validation and test sets, we should expect only a small gap in performance. Could you kindly explain why the performance on the test set is more than 3 points higher than that on the validation set? What are the differences between these two models? Thank you in advance.

data association

你好,我在看你的二阶段associations代码,发现在二阶段的时候为啥在line122把未匹配到的检测换成一阶段未匹配到的,而不是用line108的det_unmatch

image

recall 0.3=(0, 0)/0 recal .7=(0, 0)/0

Thank you for your wonderful work. While trying, I encountered a very strange problem

When evaluating, all results are 0

Then I checked the data and there was no problem. Self. infos was able to read it normally, but for some reason, the annos of the data became empty.

{'time_stamp': 1510593602140722, 'sample_idx': 20, 'sequence_name': '1005081002024129653_...0_5333_150', 'pose': array([[ 9.9984854e-...e=float32), 'annos': {'name': array([], dtype='<U10'), 'difficulty': array([], dtype=int64), 'dimensions': array([], shape=(0, ...e=float64), 'location': array([], shape=(0, ...e=float64), 'heading_angles': array([], dtype=float64), 'velocity': array([[ 2.05744581e...934e-02]]), 'obj_ids': array([], dtype='<U22'), 'tracking_difficulty': array([], dtype=int64), 'num_points_in_gt': array([], dtype=int64), ...}, 'num_points_of_each_lidar': [157177, 4063, 3523, 5472, 4389], 'lidar_path': '..s/0020.npy', 'sequence_len': 199}

refine module: how to generate Vehicle_iou_train.pkl

Hi, thank you for sharing the great work.
I run the script below.

python train.py --cfg_file cfgs/ref_model_cfgs/vehicle_grm_model.yaml

And I met the error below.
image

I run the prepare object data script.

python prepare_object_data.py --track_data_path  data/waymo/tracking/tracking-val-20230927-175237.pkl --split val

The data generate result is below.
image
I don't find the Vehicle_iou_train.pkl

  File "/root/.vscode-server/extensions/ms-python.python-2023.14.0/pythonFiles/lib/python/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_runpy.py", line 135, in _run_module_code
    _run_code(code, mod_globals, init_globals,
  File "/root/.vscode-server/extensions/ms-python.python-2023.14.0/pythonFiles/lib/python/debugpy/_vendored/pydevd/_pydevd_bundle/pydevd_runpy.py", line 124, in _run_code
    exec(code, run_globals)
  File "/SHFP12/xiaoquan.wang/01_bev/DetZero/refining/tools/train_my.py", line 204, in <module>
    main()
  File "/SHFP12/xiaoquan.wang/01_bev/DetZero/refining/tools/train_my.py", line 110, in main
    train_set, train_loader, train_sampler = build_dataloader(
  File "/defaultShare/SHFP12/xiaoquan.wang/01_bev/DetZero/refining/detzero_refine/datasets/__init__.py", line 46, in build_dataloader
    dataset = __all__[dataset_cfg.DATASET](
  File "/defaultShare/SHFP12/xiaoquan.wang/01_bev/DetZero/refining/detzero_refine/datasets/waymo/waymo_confidence_dataset.py", line 20, in __init__
    self.init_infos(self.mode)
  File "/defaultShare/SHFP12/xiaoquan.wang/01_bev/DetZero/refining/detzero_refine/datasets/dataset.py", line 54, in init_infos
    self.load_track_infos()
  File "/defaultShare/SHFP12/xiaoquan.wang/01_bev/DetZero/refining/detzero_refine/datasets/dataset.py", line 85, in load_track_infos
    with open(iou_path, 'rb') as f:
FileNotFoundError: [Errno 2] No such file or directory: '/SHFP12/xiaoquan.wang/01_bev/DetZero/data/waymo/refining/Vehicle_iou_train.pkl'

refine result visualization error.

Hi, thank you for sharing the great work.
The error is below.
image

The raw_pred_data structure is below.
image
The visualization script is below.

python visualizer.py  --data_path /SHFP12/xiaoquan.wang/01_bev/DetZero/01_refine_result/Vehicle_final.pkl
--seq_name 1024360143612057520_3580_000_3600_000

track error

Hi, thank you for sharing the great work.
I met the error below when I run the track script.
The error is below.

/SHFP12/xiaoquan.wang/01_bev/DetZero/detection/output/SHFP12/xiaoquan.wang/01_bev/DetZero/detection/tools/cfgs/det_model_cfgs/centerpoint_1sweep_my/default/eval/epoch_30/val/result.pkl
[57] 2023-09-27 01:37:53,677   INFO  WORKERS                       : 16
[58] 2023-09-27 01:37:53,677   INFO  BATCH_SIZE                    : 8
[59] 2023-09-27 01:37:53,677   INFO  SPLIT                         : val
[60] 2023-09-27 01:37:53,677   INFO  SAVE_LOG                      : False
[61] 2023-09-27 01:37:53,677   INFO  --------------------------          Initialize WaymoTrackDataset          --------------------------
[62] 2023-09-27 01:38:01,169   INFO  ----------------------------          Running Tracking Module!          ----------------------------
[63] 
[64]   0%|                                                                                                                | 0/26 [00:00<?, ?it/s]
[65]   4%|###8                                                                                                 | 1/26 [06:50<2:51:01, 410.45s/it]
[66]   8%|#######7                                                                                             | 2/26 [10:01<1:52:36, 281.50s/it]
[67]  12%|###########6                                                                                         | 3/26 [12:02<1:19:48, 208.18s/it]
[68]  15%|###############5                                                                                     | 4/26 [15:47<1:18:40, 214.59s/it]
[69]  19%|###################4                                                                                 | 5/26 [20:05<1:20:39, 230.43s/it]
[70]  23%|#######################3                                                                             | 6/26 [22:55<1:09:57, 209.87s/it]
[71]  27%|###########################1                                                                         | 7/26 [27:10<1:11:06, 224.54s/it]
[72]  31%|###############################6                                                                       | 8/26 [29:36<59:54, 199.70s/it]
[73]  35%|###################################6                                                                   | 9/26 [32:16<53:03, 187.26s/it]
[74]  38%|#######################################2                                                              | 10/26 [35:33<50:42, 190.18s/it]
[75]  38%|#######################################2                                                              | 10/26 [36:05<57:44, 216.54s/it]
[76] concurrent.futures.process._RemoteTraceback: 
[77] """
[78] Traceback (most recent call last):
[79]   File "/opt/conda/envs/detzero/lib/python3.8/concurrent/futures/process.py", line 239, in _process_worker
[80]     r = call_item.fn(*call_item.args, **call_item.kwargs)
[81]   File "/opt/conda/envs/detzero/lib/python3.8/concurrent/futures/process.py", line 198, in _process_chunk
[82]     return [fn(*args) for args in chunk]
[83]   File "/opt/conda/envs/detzero/lib/python3.8/concurrent/futures/process.py", line 198, in <listcomp>
[84]     return [fn(*args) for args in chunk]
[85]   File "/defaultShare/SHFP12/xiaoquan.wang/01_bev/DetZero/tracking/detzero_track/models/detzero_tracker.py", line 45, in forward
[86]     data_dict = module.forward(data_dict=data_dict)
[87]   File "/defaultShare/SHFP12/xiaoquan.wang/01_bev/DetZero/tracking/detzero_track/models/tracking_modules/track_manager.py", line 132, in forward
[88]     frm_id, data_dict[frm_id], frm_tracks[frm_id], reverse_tracks
[89] KeyError: '0'
[90] """
[91] 
[92] The above exception was the direct cause of the following exception:
[93] 
[94] Traceback (most recent call last):
[95]   File "run_track.py", line 72, in <module>
[96]     main()
[97]   File "run_track.py", line 60, in main
[98]     run_model(
[99]   File "/defaultShare/SHFP12/xiaoquan.wang/01_bev/DetZero/tracking/detzero_track/models/__init__.py", line 38, in run_model
[100]     model_outputs = multi_processing(
[101]   File "/defaultShare/SHFP12/xiaoquan.wang/01_bev/DetZero/utils/detzero_utils/common_utils.py", line 298, in multi_processing
[102]     results = [x for x in executor.map(function, data_dict, chunksize=workers)]
[103]   File "/defaultShare/SHFP12/xiaoquan.wang/01_bev/DetZero/utils/detzero_utils/common_utils.py", line 298, in <listcomp>
[104]     results = [x for x in executor.map(function, data_dict, chunksize=workers)]
[105]   File "/opt/conda/envs/detzero/lib/python3.8/concurrent/futures/process.py", line 484, in _chain_from_iterable_of_lists
[106]     for element in iterable:
[107]   File "/opt/conda/envs/detzero/lib/python3.8/concurrent/futures/_base.py", line 619, in result_iterator
[108]     yield fs.pop().result()
[109]   File "/opt/conda/envs/detzero/lib/python3.8/concurrent/futures/_base.py", line 444, in result
[110]     return self.__get_result()
[111]   File "/opt/conda/envs/detzero/lib/python3.8/concurrent/futures/_base.py", line 389, in __get_result
[112]     raise self._exception
[113] KeyError: '0'

The run track script is below.

python  run_track.py \
--cfg_file cfgs/tk_model_cfgs/waymo_detzero_track_my.yaml \
--data_path /SHFP12/xiaoquan.wang/01_bev/DetZero/detection/output/SHFP12/xiaoquan.wang/01_bev/DetZero/detection/tools/cfgs/det_model_cfgs/centerpoint_1sweep_my/default/eval/epoch_30/val/result.pkl \
--workers 16 --split val

the waymo dataset

hello, i'm new to this field, could you please give some illustrations on how to obtain "imagesets" and "raw data", i see the waymo dataset only has some zip files. and i see many versions of dataset, what specific version datasets you have used in this work
image

change dataset

I reproduced the tracking on my own data and found that the effect was much worse than on waymo. Can you give me some guidance, such as modifying which parameters will make the tracking effect better? Thank you very much.

“ModuleNotFoundError: No module named 'detzero_utils'”

Hi,
I met the error below when I run the script python -m detzero_det.datasets.waymo.waymo_preprocess --cfg_file tools/cfgs/det_dataset_cfgs/waymo_one_sweep.yaml --func create_waymo_database
I found the are no detzero_utils file.
image

"RuntimeError: cuDNN error: CUDNN_STATUS_NOT_SUPPORTED. This error may appear if you passed in a non-contiguous input."

Hi, thank you for sharing the great work!
I met the error of below when I run the script below.

python test.py --cfg_file cfgs/det_model_cfgs/centerpoint_1sweep_my.yaml \
--ckpt /SHFP12/xiaoquan.wang/01_bev/DetZero/detection/output/det_model_cfgs/centerpoint_1sweep_my/default/ckpt/checkpoint_epoch_30.pth \
--extra_tag centerpoint_1sweep_my_tta \
--set DATA_CONFIG.TTA True

The error is below.

023-09-26 11:50:50,402   INFO  *************** EPOCH 30 EVALUATION *****************
eval:   0%|                                                                             | 0/1250 [00:00<?, ?it/s]Traceback (most recent call last):
  File "test.py", line 205, in <module>
    main()
  File "test.py", line 201, in main
    eval_single_ckpt(model, test_loader, args, eval_output_dir, logger, epoch_id, dist_test=dist_test)
  File "test.py", line 66, in eval_single_ckpt
    eval_utils.eval_one_epoch(
  File "/defaultShare/SHFP12/xiaoquan.wang/01_bev/DetZero/detection/tools/eval_utils.py", line 73, in eval_one_epoch
    result = model(batch_dict)
  File "/opt/conda/envs/detzero/lib/python3.8/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl
    return forward_call(*input, **kwargs)
  File "/defaultShare/SHFP12/xiaoquan.wang/01_bev/DetZero/detection/detzero_det/models/centerpoint.py", line 29, in forward
    batch_dict = cur_module(batch_dict)
  File "/opt/conda/envs/detzero/lib/python3.8/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl
    return forward_call(*input, **kwargs)
  File "/defaultShare/SHFP12/xiaoquan.wang/01_bev/DetZero/detection/detzero_det/models/centerpoint_modules/backbone2d.py", line 101, in forward
    x = self.blocks[i](x)
  File "/opt/conda/envs/detzero/lib/python3.8/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl
    return forward_call(*input, **kwargs)
  File "/opt/conda/envs/detzero/lib/python3.8/site-packages/torch/nn/modules/container.py", line 141, in forward
    input = module(input)
  File "/opt/conda/envs/detzero/lib/python3.8/site-packages/torch/nn/modules/module.py", line 1102, in _call_impl
    return forward_call(*input, **kwargs)
  File "/opt/conda/envs/detzero/lib/python3.8/site-packages/torch/nn/modules/batchnorm.py", line 168, in forward
    return F.batch_norm(
  File "/opt/conda/envs/detzero/lib/python3.8/site-packages/torch/nn/functional.py", line 2282, in batch_norm
    return torch.batch_norm(
RuntimeError: cuDNN error: CUDNN_STATUS_NOT_SUPPORTED. This error may appear if you passed in a non-contiguous input.

But when I remove the --set DATA_CONFIG.TTA True , it run successfully.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.