Code/3D tracking

simple track - nuScenes dataset

2023. 9. 25. 00:15
목차
  1. 1. Data Preprocessing
  2. 2. Inference
  3. 3. Output Format
  4. 4. Evaluation

1. Data Preprocessing

  1. https://www.nuscenes.org/nuscenes#download 에서 nuscenes raw data 다운(panoptic, all data)
  2. nuscenes_preprocess.sh
raw_data_dir=$1
data_dir_2hz=$2
data_dir_20hz=$3

# token information
python3 token_info.py --raw_data_folder $raw_data_dir --data_folder $data_dir_2hz --mode 2hz
python3 token_info.py --raw_data_folder $raw_data_dir --data_folder $data_dir_20hz --mode 20hz

# time stamp information
python3 time_stamp.py --raw_data_folder $raw_data_dir --data_folder $data_dir_2hz --mode 2hz
python3 time_stamp.py --raw_data_folder $raw_data_dir --data_folder $data_dir_20hz --mode 20hz

# sensor calibration information
python3 sensor_calibration.py --raw_data_folder $raw_data_dir --data_folder $data_dir_2hz --mode 2hz
python3 sensor_calibration.py --raw_data_folder $raw_data_dir --data_folder $data_dir_20hz --mode 20hz

# ego pose
python3 ego_pose.py --raw_data_folder $raw_data_dir --data_folder $data_dir_2hz --mode 2hz
python3 ego_pose.py --raw_data_folder $raw_data_dir --data_folder $data_dir_20hz --mode 20hz

# gt information
python3 gt_info.py --raw_data_folder $raw_data_dir --data_folder $data_dir_2hz --mode 2hz
python3 gt_info.py --raw_data_folder $raw_data_dir --data_folder $data_dir_20hz --mode 20hz

# point cloud, useful for visualization
python3 raw_pc.py --raw_data_folder $raw_data_dir --data_folder $data_dir_2hz --mode 2hz
python3 raw_pc.py --raw_data_folder $raw_data_dir --data_folder $data_dir_20hz --mode 20hz


$raw_data_dir : 다운받은 nuscenes raw data폴더 지정. 이때 폴더 안에 maps, panoptic, samples, sweeps, v1.0-trainval있고, v1.0trainval 안에는 다음과 같은 json 파일 포함되어야 함.

$data_folder 에는 결과를 저장할 새로운 dir 경로를 지정하면 된다. 이 때, mode에 따라 구분하여 생성할 것.

 

   3.  detection

 

# for 2Hz detection file
python detection.py --raw_data_folder ${raw_data_dir} --data_folder ${data_dir_2hz} --det_name ${name} --file_path ${file_path} --mode 2hz --velo

# for 20Hz detection file
python detection.py --raw_data_folder ${raw_data_dir} --data_folder ${data_dir_20hz} --det_name ${name} --file_path ${file_path} --mode 20hz --velo

$data_folder : preprocess.sh에서 생성한 결과 폴더

$det_name : 결과 name(name으로 설정)

$file_path : detection 결과 저장할 path

 

 

python detection.py --raw_data_folder C:\Users\rosha\OneDrive\Desktop\AVE_Lab\nuscenes --data_folder C:\Users\rosha\OneDrive\Desktop\AVE_Lab\nuscenes\20hz --det_name name --file_path C:\Users\rosha\OneDrive\Desktop\AVE_Lab\nuscenes\validation_10hz\detection_file.json --mode 20hz

 

2. Inference

$python main_nuscenes_10hz.py --name SimpleTrack10Hz --det_name name --config_path configs\nu_configs\giou.yaml --result_folder result --data_folder C:\Users\rosha\OneDrive\Desktop\AVE_Lab\nuscenes\20hz --process 1

 

$python main_nuscenes.py --name SimpleTrack2Hz --det_name name --config_path configs\nu_configs\giou.yaml --result_folder result --data_folder C:\Users\rosha\OneDrive\Desktop\AVE_Lab\nuscenes\2hz --process 1

 

3. Output Format

convert the output results in the SimpleTrack format into the .json format specified by the nuScenes officials.

 

$python nuscenes_result_creation.py --name SimpleTrack2Hz --result_folder C:\Users\rosha\OneDrive\Desktop\AVE_Lab\SimpleTrack\result --data_folder C:\Users\rosha\OneDrive\Desktop\AVE_Lab\nuscenes\2hz

 

$python nuscenes_type_merge.py --name SimpleTrack2Hz --result_folder C:\Users\rosha\OneDrive\Desktop\AVE_Lab\SimpleTrack\result

 

4. Evaluation

https://github.com/nutonomy/nuscenes-devkit/tree/master/python-sdk/nuscenes/eval/tracking

prediction -> result_path

gt -> eval_path

 

    parser.add_argument('result_path', type=str, help='The submission as a JSON file.')
    parser.add_argument('--output_dir', type=str, default='~/nuscenes-metrics',
                        help='Folder to store result metrics, graphs and example visualizations.')
    parser.add_argument('--eval_set', type=str, default='val',
                        help='Which dataset split to evaluate on, train, val or test.')
    parser.add_argument('--dataroot', type=str, default='/data/sets/nuscenes',
                        help='Default nuScenes data directory.')
    parser.add_argument('--version', type=str, default='v1.0-trainval',
                        help='Which version of the nuScenes dataset to evaluate on, e.g. v1.0-trainval.')
    parser.add_argument('--config_path', type=str, default='',
                        help='Path to the configuration file.'
                             'If no path given, the NIPS 2019 configuration will be used.')
    parser.add_argument('--render_curves', type=int, default=1,
                        help='Whether to render statistic curves to disk.')
    parser.add_argument('--verbose', type=int, default=1,
                        help='Whether to print to stdout.')
    parser.add_argument('--render_classes', type=str, default='', nargs='+',
                        help='For which classes we render tracking results to disk.')

 

(ab3dmot) C:\Users\rosha\OneDrive\Desktop\AVE_Lab\nuscenes-devkit\python-sdk\nuscenes\eval\tracking>python evaluate.py --result_path C:\Users\rosha\OneDrive\Desktop\AVE_Lab\SimpleTrack\result\SimpleTrack2Hz\results\results.json --output_dir C:\Users\rosha\OneDrive\Desktop\AVE_Lab\evaluation --eval_set val --dataroot C:\Users\rosha\OneDrive\Desktop\AVE_Lab\nuscenes

 

오류 1.

ValueError: names2, nlevels5 Length of names must match number of levels in MultiIndex.

방안 : multi.py안의 self.nlevels를 2로 바꾸어주었음.

 

오류 2.

ValueError: Shape of passed values is (31, 4), indices imply (2, 4)

방안 : motmetrics 버전을 1.1.3으로 downgrade

 

 

저작자표시

'Code > 3D tracking' 카테고리의 다른 글

Simple Track Preprocessing  (0) 2023.10.04
nuScenes tracking data  (0) 2023.10.03
Evaluation code  (0) 2023.09.18
Simple Track demo  (0) 2023.09.16
AB3DMOT evaluation code  (0) 2023.09.15
  1. 1. Data Preprocessing
  2. 2. Inference
  3. 3. Output Format
  4. 4. Evaluation
'Code/3D tracking' 카테고리의 다른 글
  • Simple Track Preprocessing
  • nuScenes tracking data
  • Evaluation code
  • Simple Track demo
Shy_un
Shy_un
Shy_un
SSHub
Shy_un
전체
오늘
어제
  • 분류 전체보기
    • KaAI
      • CPWC
      • KSC2022
      • KSME2023
    • Paper
      • Video Anomaly Detection
      • Traffic Accident Detection
      • Prediction and Tracking
      • Perception
    • Code
      • preprocess
      • Autoware
      • 3D tracking
      • Review
      • Debug
    • Dataset
      • Argoverse2 dataset
      • TJ4DRadSet
      • K-Radar
      • Nuscenes
      • Dual-Radar
    • Seminar
    • Paradigm
    • Ubuntu

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • video anomaly detection
  • Traffic accident detection #Unsupervised learning #GRU #Autoencoder
  • self-supervised learning

최근 댓글

최근 글

hELLO · Designed By 정상우.
Shy_un
simple track - nuScenes dataset
상단으로

티스토리툴바

단축키

내 블로그

내 블로그 - 관리자 홈 전환
Q
Q
새 글 쓰기
W
W

블로그 게시글

글 수정 (권한 있는 경우)
E
E
댓글 영역으로 이동
C
C

모든 영역

이 페이지의 URL 복사
S
S
맨 위로 이동
T
T
티스토리 홈 이동
H
H
단축키 안내
Shift + /
⇧ + /

* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.