Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
J
jfxmap_python
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
oscar
jfxmap_python
Commits
c9f3aab8
Commit
c9f3aab8
authored
Feb 07, 2022
by
oscar
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
提交代码
parent
e2d97e48
Hide whitespace changes
Inline
Side-by-side
Showing
7 changed files
with
593 additions
and
154 deletions
+593
-154
2-1.yaml
script/generate/N2_1/2-1.yaml
+82
-0
2-3.yaml
script/generate/N2_3/2-3.yaml
+81
-0
3-1.yaml
script/generate/N3_1/3-1.yaml
+81
-0
3-2.yaml
script/generate/N3_2/3-2.yaml
+76
-0
5-1.yaml
script/generate/N5_1/5-1.yaml
+78
-0
7-1.yaml
script/generate/N7_1/7-1.yaml
+82
-0
trans_and_export_data_multi_auto.py
script/trans_and_export_data_multi_auto.py
+113
-154
No files found.
script/generate/N2_1/2-1.yaml
0 → 100644
View file @
c9f3aab8
NODE_NAME
:
2-1
CAMERA_LAYOUT
:
[
0
,
-1
,
-1
]
POLICY_MASK
:
[
1
,
-1
,
-1
]
CAMERA_SERIAL_NO
:
[
21135335
,
-1
,
-1
]
DRIVE_DIRECTION
:
[
4
,
-1
,
-1
]
# 0为双向,1为单向朝左,2为单向朝右,3为单向朝上,4为单向朝下,-1代表没有
USE_BLIND
:
[
-1
,
-1
]
# -1 means no blind area is used
POINTPILLARS
:
MAX_NUM_PILLARS
:
40000
MAX_NUM_POINTS_PER_PILLAR
:
32
NUM_CLASS
:
5
SCORE_THRESHOLD
:
0.3
NMS_OVERLAP_THRESHOLD
:
0.5
PFE_OUT_SIZE
:
64
NUM_THREADS
:
64
BATCH_SIZE
:
1
PILLAR_SIZES
:
[
0.16
,
0.16
,
6
]
GRID_SIZES
:
[
512
,
1024
,
1
]
PC_T_RANGE
:
[
9.194107300534933
,
-5.626122637755718
,
150.0
,
20.0
,
11.849103226522763
,
15.0
,
-9.0
,
80.0
,
-80.0
,
-3.487847099057734
]
PC_RANGE
:
[
0
,
-81.92
,
-7.0
,
81.92
,
81.92
,
-1.0
]
PFE_ONNX_FILE
:
/home/nvidia/catkin_ws/src/jfxrosperceiver/pointpillars/build/models/4.0_N19/PillarVFE_JF_ep200_40000_4.0_N19_v2.onnx
RPN_ONNX_FILE
:
/home/nvidia/catkin_ws/src/jfxrosperceiver/pointpillars/build/models/4.0_N19/RPNWithHead_JF_ep200_4.0_N19_v2.onnx
IMAGE_SIZES
:
[[
2048
,
2448
],
[
2048
,
2448
],
[
2048
,
2448
]]
IMG_CONTOURS
:
[[[
892
,
1076
],
[
2232
,
1177
],
[
2027
,
912
],
[
1289
,
857
]],
[[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
]],
[[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
]]]
PC_POLICY_ROTY
:
[[
3.141593
,
0.0
],
[
1000.052144
,
-1000.052144
],
[
1000.052144
,
-1000.052144
]]
PC_POLICY_AREA
:
[[[
1519
,
874
],
[
1902
,
904
],
[
1941
,
1019
],
[
1984
,
1158
],
[
1304
,
1106
],
[
1443
,
963
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
]],
[[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
]],
[[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
]]]
ORIGIN2KITTI
:
[[
0.05045908306549516
,
-0.997741728436212
,
0.04433197799906369
,
0.0
],
[
0.9959209468126726
,
0.05359234819149573
,
0.07259013648610471
,
0.0
],
[
-0.0748020630460102
,
0.04048831377621809
,
0.9963761076077744
,
0.2859260540868016
],
[
0.0
,
0.0
,
0.0
,
1.0
]]
KITTI2ORIGIN
:
[[
0.05045908306549516
,
0.9959209468126726
,
-0.0748020630460102
,
0.021387858724297854
],
[
-0.9977417284362121
,
0.053592348191495734
,
0.04048831377621808
,
-0.011576663794662325
],
[
0.04433197799906368
,
0.0725901364861047
,
0.9963761076077743
,
-0.2848898888346573
],
[
0.0
,
0.0
,
0.0
,
1.0
]]
GROUND_Z_VALUE
:
[
-6.0
,
-6.0
,
-6.0
]
MINMAX_DEPTH
:
[
82.0
,
150.0
]
LIDAR_CAM_RS_0
:
[[
-0.992241
,
-0.124323
,
0.00128333
,
-0.124081
],
[
-0.00340261
,
0.0168357
,
-0.999852
,
-0.276797
],
[
0.124283
,
-0.992099
,
-0.0171281
,
0.736849
],
[
0
,
0
,
0
,
1
]]
LIDAR_CAM_RS_1
:
[[
0.0
,
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
,
0.0
]]
LIDAR_CAM_RS_2
:
[[
0.0
,
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
,
0.0
]]
CAM_INTRINSICS_0
:
[[
7509.058839767741
,
0.0
,
1220.4602532816716
],
[
0.0
,
7523.874930002482
,
1052.3337431444797
],
[
0.0
,
0.0
,
1.0
]]
CAM_INTRINSICS_1
:
[[
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
]]
CAM_INTRINSICS_2
:
[[
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
]]
TRACKING
:
LOG_FOLDER
:
/home/nvidia/catkin_ws/src/jfxrosperceiver/tracking_logs/
TIMING
:
false
SAVE_LOG
:
false
^M
TRANS
:
[[
-0.055129300803
,
-0.997837603092
,
0.03578780219
,
40610743.054429375
],
[
0.997480928898
,
-0.053436487913
,
0.046649895608
,
3462873.475322144
],
[
-0.044636640698
,
0.038269422948
,
0.998269975185
,
19.47205303
],
[
0.0
,
0.0
,
0.0
,
1.0
]]
BLIND_IN
:
[]
BLIND_OUT
:
[]
script/generate/N2_3/2-3.yaml
0 → 100644
View file @
c9f3aab8
NODE_NAME
:
2-3
CAMERA_LAYOUT
:
[
0
,
-1
,
-1
]
#-1代表没有此方向相机,非-1的值按照0,1,2排序
X_ROT_ANGLE
:
1
# 0代表x轴不旋转,仅微调;1代表x轴顺时针旋转90度;2代表顺时针旋转180度
POLICY_MASK
:
[
1
,
-1
,
-1
]
# 1代表这个方向加远处策略,-1代表不加策略
CAMERA_SERIAL_NO
:
[
21177826
,
-1
,
-1
]
DRIVE_DIRECTION
:
[
4
,
-1
,
-1
]
# 0为双向,1为单向朝左,2为单向朝右,3为单向朝上,4为单向朝下,-1代表没有
USE_BLIND
:
-1
# -1 indicates no blind area in this loc is considered;
# 1 means normal blind area (one blind in, one blind out);
# 2 means two-way lane (one blind in, two blind out: each for one direction);
POINTPILLARS
:
MAX_NUM_PILLARS
:
40000
MAX_NUM_POINTS_PER_PILLAR
:
32
NUM_CLASS
:
5
SCORE_THRESHOLD
:
0.3
NMS_OVERLAP_THRESHOLD
:
0.5
PFE_OUT_SIZE
:
64
NUM_THREADS
:
64
BATCH_SIZE
:
1
PILLAR_SIZES
:
[
0.16
,
0.16
,
6
]
GRID_SIZES
:
[
512
,
1024
,
1
]
PC_T_RANGE
:
[
6.1251366922756505
,
-6.994626040527446
,
150.0
,
10.0
,
2.0330234900343815
,
14.0
,
-10.0
,
80.0
,
-80.0
,
-17.61428020647701
]
PC_RANGE
:
[
0
,
-81.92
,
-7.0
,
81.92
,
81.92
,
-1.0
]
PFE_ONNX_FILE
:
/home/nvidia/catkin_ws/src/jfxrosperceiver/pointpillars/build/models/4.0_N19/PillarVFE_JF_ep100_40000_4.0_N19.onnx
RPN_ONNX_FILE
:
/home/nvidia/catkin_ws/src/jfxrosperceiver/pointpillars/build/models/4.0_N19/RPNWithHead_JF_ep100_4.0_N19.onnx
IMAGE_SIZES
:
[[
2048
,
2448
],
[
2048
,
2448
],
[
2048
,
2448
]]
IMG_CONTOURS
:
[[[
832
,
1405
],
[
2031
,
1417
],
[
1743
,
1140
],
[
1084
,
1134
]],
[[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
]],
[[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
]]]
PC_POLICY_ROTY
:
[[
3.141593
,
0.0
],
[
1000.075752
,
-1000.075752
],
[
1000.075752
,
-1000.075752
]]
PC_POLICY_AREA
:
[[[
1195
,
1138
],
[
1673
,
1142
],
[
1761
,
1299
],
[
1823
,
1418
],
[
1068
,
1416
],
[
1141
,
1267
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
]],
[[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
]],
[[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
]]]
ORIGIN2KITTI
:
[[
0.07568437565247627
,
-0.9968308870840116
,
-0.02449607800031248
,
0.0
],
[
0.9971317454228593
,
0.07565174868629727
,
0.002257252902847979
,
0.0
],
[
-0.0003969282768393359
,
-0.024596655789107878
,
0.9996973776958381
,
0.9000000000000004
],
[
0.0
,
0.0
,
0.0
,
1.0
]]
KITTI2ORIGIN
:
[[
0.07568437565247625
,
0.9971317454228593
,
-0.00039692827683933564
,
0.00035723544915540245
],
[
-0.9968308870840116
,
0.07565174868629727
,
-0.02459665578910788
,
0.0221369902101971
],
[
-0.024496078000312487
,
0.0022572529028479795
,
0.9996973776958382
,
-0.8997276399262547
],
[
0.0
,
0.0
,
0.0
,
1.0
]]
GROUND_Z_VALUE
:
[
-6.0
,
-6.0
,
-6.0
]
MINMAX_DEPTH
:
[
82.0
,
150.0
]
LIDAR_CAM_RS_0
:
[[
-0.994864
,
-0.101092
,
0.00511658
,
0.0528449
],
[
-0.0100038
,
0.0478969
,
-0.998802
,
-0.273319
],
[
0.100726
,
-0.993723
,
-0.0486622
,
0.659704
],
[
0
,
0
,
0
,
1
]]
LIDAR_CAM_RS_1
:
[[
0.0
,
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
,
0.0
]]
LIDAR_CAM_RS_2
:
[[
0.0
,
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
,
0.0
]]
CAM_INTRINSICS_0
:
[[
7559.7
,
0.0
,
1201.2
],
[
0.0
,
7572.8
,
985.6993
],
[
0.0
,
0.0
,
1.0
]]
CAM_INTRINSICS_1
:
[[
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
]]
CAM_INTRINSICS_2
:
[[
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
]]
TRACKING
:
LOG_FOLDER
:
/home/nvidia/catkin_ws/src/jfxrosperceiver/tracking_logs/
TIMING
:
true
TRANS
:
[[
0.118877768517
,
0.990384340286
,
-0.070760093629
,
40610864.76316899
],
[
-0.992871820927
,
0.119187220931
,
0.000152187393
,
3462876.197313769
],
[
0.008584422991
,
0.070237606764
,
0.997493386269
,
20.07169652
],
[
0.0
,
0.0
,
0.0
,
1.0
]]
BLIND_IN
:
[]
BLIND_OUT
:
[]
BLIND_OUT_2
:
[]
script/generate/N3_1/3-1.yaml
0 → 100644
View file @
c9f3aab8
NODE_NAME
:
3-1
CAMERA_LAYOUT
:
[
0
,
-1
,
-1
]
POLICY_MASK
:
[
-1
,
-1
,
-1
]
CAMERA_SERIAL_NO
:
[
21179749
,
-1
,
-1
]
DRIVE_DIRECTION
:
[
4
,
-1
,
-1
]
# 0为双向,1为单向朝左,2为单向朝右,3为单向朝上,4为单向朝下,-1代表没有
USE_BLIND
:
[
-1
,
-1
]
# -1 means no blind area is used
POINTPILLARS
:
MAX_NUM_PILLARS
:
40000
MAX_NUM_POINTS_PER_PILLAR
:
32
NUM_CLASS
:
5
SCORE_THRESHOLD
:
0.3
NMS_OVERLAP_THRESHOLD
:
0.5
PFE_OUT_SIZE
:
64
NUM_THREADS
:
64
BATCH_SIZE
:
1
PILLAR_SIZES
:
[
0.16
,
0.16
,
6
]
GRID_SIZES
:
[
512
,
1024
,
1
]
PC_T_RANGE
:
[
7.005945168920547
,
-6.716958738970565
,
80.0
,
24.0
,
13.64794108585249
,
21.0
,
-10.0
,
80.0
,
-80.0
,
-4.948397653689416
]
PC_RANGE
:
[
0
,
-81.92
,
-7.0
,
81.92
,
81.92
,
-1.0
]
PFE_ONNX_FILE
:
/home/nvidia/catkin_ws/src/jfxrosperceiver/pointpillars/build/models/4.0_N19/PillarVFE_JF_ep100_40000_4.0_N19.onnx
RPN_ONNX_FILE
:
/home/nvidia/catkin_ws/src/jfxrosperceiver/pointpillars/build/models/4.0_N19/RPNWithHead_JF_ep100_4.0_N19.onnx
IMAGE_SIZES
:
[[
2048
,
2448
],
[
2048
,
2448
],
[
2048
,
2448
]]
IMG_CONTOURS
:
[[[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
]],
[[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
]],
[[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
]]]
PC_POLICY_ROTY
:
[[
3.141593
,
0.0
],
[
1000.102829
,
-1000.102829
],
[
1000.102829
,
-1000.102829
]]
PC_POLICY_AREA
:
[[[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
]],
[[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
]],
[[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
]]]
ORIGIN2KITTI
:
[[
0.10282893175566048
,
-0.9927983688656276
,
0.06146226136206685
,
0.0
],
[
0.9946815801416514
,
0.10226437626202323
,
-0.01226994191701453
,
0.0
],
[
0.0058961784994428
,
0.06239708427073043
,
0.9980339868729993
,
0.7844127162859094
],
[
0.0
,
0.0
,
0.0
,
1.0
]]
KITTI2ORIGIN
:
[[
0.10282893175566046
,
0.9946815801416512
,
0.005896178499442798
,
-0.004625037392454504
],
[
-0.9927983688656277
,
0.10226437626202323
,
0.062397084270730444
,
-0.04894506636112445
],
[
0.06146226136206687
,
-0.012269941917014532
,
0.9980339868729994
,
-0.782870550588705
],
[
0.0
,
0.0
,
0.0
,
1.0
]]
GROUND_Z_VALUE
:
[
-6.0
,
-6.0
,
-6.0
]
MINMAX_DEPTH
:
[
82.0
,
150.0
]
LIDAR_CAM_RS_0
:
[[
-0.996872
,
0.078968
,
-0.00318625
,
0.0158725
],
[
0.0130107
,
0.124211
,
-0.992171
,
-0.129212
],
[
-0.077954
,
-0.989109
,
-0.12485
,
0.635463
],
[
0
,
0
,
0
,
1
]]
LIDAR_CAM_RS_1
:
[[
0.0
,
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
,
0.0
]]
LIDAR_CAM_RS_2
:
[[
0.0
,
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
,
0.0
]]
CAM_INTRINSICS_0
:
[[
7539.908889587756
,
0.0
,
1234.3767381002895
],
[
0.0
,
7554.026627701238
,
1018.7128705998498
],
[
0.0
,
0.0
,
1.0
]]
CAM_INTRINSICS_1
:
[[
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
]]
CAM_INTRINSICS_2
:
[[
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
]]
TRACKING
:
LOG_FOLDER
:
/home/nvidia/catkin_ws/src/jfxrosperceiver/tracking_logs/
TIMING
:
true
TRANS
:
[[
-0.043562665582
,
0.997077941895
,
-0.062752954662
,
40611565.80853813
],
[
-0.998564898968
,
-0.041496656835
,
0.033858418465
,
3463081.4422527524
],
[
0.031155442819
,
0.064137846231
,
0.997454583645
,
19.81514911
],
[
0.0
,
0.0
,
0.0
,
1.0
]]
BLIND_IN
:
[]
BLIND_OUT
:
[]
script/generate/N3_2/3-2.yaml
0 → 100644
View file @
c9f3aab8
NODE_NAME
:
3-2
CAMERA_LAYOUT
:
[
0
,
-1
,
-1
]
#-1代表没有此方向相机,非-1的值按照0,1,2排序
X_ROT_ANGLE
:
0
# 0代表x轴不旋转,仅微调;1代表 正常 kitti旋转;2代表顺时针旋转180度
POLICY_MASK
:
[
-1
,
-1
,
-1
]
# 1代表这个方向加远处策略,-1代表不加策略
CAMERA_SERIAL_NO
:
[
21122017
,
-1
,
-1
]
#相机序列号,-1代表没有
DRIVE_DIRECTION
:
[
-1
,
-1
,
-1
]
# 0为双向,1为单向朝左,2为单向朝右,3为单向朝上,4为单向朝下,-1代表没有
USE_BLIND
:
1
# -1 indicates no blind area in this loc is considered;
# 1 means normal blind area (one blind in, one blind out);
# 2 means two-way lane (one blind in, two blind out: each for one direction);
POINTPILLARS
:
MAX_NUM_PILLARS
:
40000
MAX_NUM_POINTS_PER_PILLAR
:
32
NUM_CLASS
:
5
SCORE_THRESHOLD
:
0.3
NMS_OVERLAP_THRESHOLD
:
0.5
PFE_OUT_SIZE
:
64
NUM_THREADS
:
64
BATCH_SIZE
:
1
PILLAR_SIZES
:
[
0.16
,
0.16
,
6
]
GRID_SIZES
:
[
512
,
1024
,
1
]
PC_T_RANGE
:
[
8.28605438543586
,
8.28605438543586
,
80.0
,
40.0
,
6.459208303881683
,
104.0
,
-127.0
,
80.0
,
-80.0
,
-13.381680298363811
]
PC_RANGE
:
[
0
,
-81.92
,
-7.0
,
81.92
,
81.92
,
-1.0
]
PFE_ONNX_FILE
:
/home/nvidia/catkin_ws/src/jfxrosperceiver/pointpillars/build/models/4.0_N19/PillarVFE_JF_ep200_40000_4.0_N19_v2.onnx
RPN_ONNX_FILE
:
/home/nvidia/catkin_ws/src/jfxrosperceiver/pointpillars/build/models/4.0_N19/RPNWithHead_JF_ep200_4.0_N19_v2.onnx
IMAGE_SIZES
:
[[
2048
,
2448
],
[
2048
,
2448
],
[
2048
,
2448
]]
IMG_CONTOURS
:
[[[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
]],
[[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
]],
[[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
]]]
PC_POLICY_ROTY
:
[[
3.141593
,
0.0
],
[
1000.028316
,
-1000.028316
],
[
1000.028316
,
-1000.028316
]]
PC_POLICY_AREA
:
[[[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
]],
[[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
]],
[[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
]]]
ORIGIN2KITTI
:
[[
0.9995180204153945
,
0.028485544660163925
,
-0.012341013341895022
,
10.0
],
[
-0.02812481342444661
,
0.9991986491976914
,
0.02847901528053492
,
0.0
],
[
0.013142364122603362
,
-0.02811820027887063
,
0.9995182064766736
,
0.7000000000000002
],
[
0.0
,
0.0
,
0.0
,
1.0
]]
KITTI2ORIGIN
:
[[
0.9995180204153945
,
-0.028124813424446605
,
0.013142364122603362
,
-0.009199654885822353
],
[
0.02848554466016391
,
0.9991986491976912
,
-0.02811820027887063
,
0.019682740195209443
],
[
-0.01234101334189502
,
0.028479015280534915
,
0.9995182064766736
,
-0.6996627445336716
],
[
0.0
,
0.0
,
0.0
,
1.0
]]
GROUND_Z_VALUE
:
[
-6.0
,
-6.0
,
-6.0
]
MINMAX_DEPTH
:
[
82.0
,
150.0
]
LIDAR_CAM_RS_0
:
[[
-0.994998161
,
0.0998929805
,
0.00022632723
,
0.00244574
],
[
0.0181879421
,
0.18339046
,
-0.982871883
,
-0.209588
],
[
-0.0982235081
,
-0.9779516
,
-0.184290018
,
0.615876
],
[
0
,
0
,
0
,
1
]]
LIDAR_CAM_RS_1
:
[[
0.0
,
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
,
0.0
]]
LIDAR_CAM_RS_2
:
[[
0.0
,
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
,
0.0
]]
CAM_INTRINSICS_0
:
[[
7481.380550495129
,
0.0
,
1149.9210278736896
],
[
0.0
,
7494.475356826924
,
1022.9019086640917
],
[
0.0
,
0.0
,
1.0
]]
CAM_INTRINSICS_1
:
[[
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
]]
CAM_INTRINSICS_2
:
[[
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
]]
TRACKING
:
LOG_FOLDER
:
/home/nvidia/catkin_ws/src/jfxrosperceiver/tracking_logs/
TIMING
:
false
SAVE_LOG
:
true
TRANS
:
[[
-0.21047334373
,
-0.977406859398
,
-0.019409403205
,
40611447.92258323
],
[
0.977276146412
,
-0.20985160768
,
-0.029891142622
,
3463078.57738011
],
[
0.025142716244
,
-0.025259640068
,
0.999364733696
,
20.34537223
],
[
0.0
,
0.0
,
0.0
,
1.0
]]
BLIND_IN
:
[
4.319010529319466
,
15.84543415901052
,
-16.66174637729601
,
14.517728383602746
]
BLIND_OUT
:
[
3.7139257823670073
,
14.91321390226355
,
11.03645420678645
,
26.545831007005923
]
BLIND_OUT_2
:
[]
script/generate/N5_1/5-1.yaml
0 → 100644
View file @
c9f3aab8
NODE_NAME
:
5-1
CAMERA_LAYOUT
:
[
0
,
-1
,
-1
]
POLICY_MASK
:
[
-1
,
-1
,
-1
]
CAMERA_SERIAL_NO
:
[
21177822
,
-1
,
-1
]
DRIVE_DIRECTION
:
[
4
,
-1
,
-1
]
# 0为双向,1为单向朝左,2为单向朝右,3为单向朝上,4为单向朝下,-1代表没有
USE_BLIND
:
[
-1
,
-1
]
# -1 means no blind area is used
POINTPILLARS
:
MAX_NUM_PILLARS
:
40000
MAX_NUM_POINTS_PER_PILLAR
:
32
NUM_CLASS
:
5
SCORE_THRESHOLD
:
0.3
NMS_OVERLAP_THRESHOLD
:
0.5
PFE_OUT_SIZE
:
64
NUM_THREADS
:
64
BATCH_SIZE
:
1
PILLAR_SIZES
:
[
0.16
,
0.16
,
6
]
GRID_SIZES
:
[
512
,
1024
,
1
]
PC_T_RANGE
:
[
0.11561325046748723
,
-1.092793314581994
,
80.0
,
152.0
,
48.33986211090886
,
40.0
,
-58.0
,
80.0
,
-80.0
,
-4.799776272749738
]
PC_RANGE
:
[
0
,
-81.92
,
-7.0
,
81.92
,
81.92
,
-1.0
]
PFE_ONNX_FILE
:
/home/nvidia/catkin_ws/src/jfxrosperceiver/pointpillars/build/models/5/PillarVFE_JF_ep150_40000_4.0_N5_v2.onnx
RPN_ONNX_FILE
:
/home/nvidia/catkin_ws/src/jfxrosperceiver/pointpillars/build/models/5/RPNWithHead_JF_ep150_4.0_N5_v2.onnx
IMAGE_SIZES
:
[[
2048
,
2448
],
[
2048
,
2448
],
[
2048
,
2448
]]
IMG_CONTOURS
:
[[[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
]],
[[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
]],
[[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
]]]
PC_POLICY_ROTY
:
[[
3.141593
,
0.0
],
[
999.904895
,
-999.904895
],
[
999.904895
,
-999.904895
]]
PC_POLICY_AREA
:
[[[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
]],
[[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
]],
[[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
],
[
0
,
0
]]]
ORIGIN2KITTI
:
[[
-0.09480387225484764
,
-0.9950266779148981
,
0.03056363923239795
,
0.0
],
[
0.9954426694786479
,
-0.09507180857810195
,
-0.007432563145518051
,
0.0
],
[
0.010301339073630237
,
0.02971971485950677
,
0.9995051880615526
,
0.2999999999999998
],
[
0.0
,
0.0
,
0.0
,
1.0
]]
KITTI2ORIGIN
:
[[
-0.09480387225484765
,
0.9954426694786479
,
0.010301339073630237
,
-0.003090401722089069
],
[
-0.9950266779148981
,
-0.09507180857810194
,
0.029719714859506766
,
-0.008915914457852024
],
[
0.03056363923239795
,
-0.007432563145518051
,
0.9995051880615526
,
-0.2998515564184656
],
[
0.0
,
0.0
,
0.0
,
1.0
]]
GROUND_Z_VALUE
:
[
-6.0
,
-6.0
,
-6.0
]
MINMAX_DEPTH
:
[
82.0
,
150.0
]
LIDAR_CAM_RS_0
:
[[
-0.995931
,
0.0900209
,
-0.00411634
,
-0.00573507
],
[
0.0128231
,
0.0963568
,
-0.995264
,
-0.25262
],
[
-0.089198
,
-0.991268
,
-0.0971191
,
0.610466
],
[
0
,
0
,
0
,
1
]]
LIDAR_CAM_RS_1
:
[[
0.0
,
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
,
0.0
]]
LIDAR_CAM_RS_2
:
[[
0.0
,
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
,
0.0
]]
CAM_INTRINSICS_0
:
[[
7622.689563753009
,
0.0
,
1211.247963539479
],
[
0.0
,
7639.9807282917445
,
1059.6689492152698
],
[
0.0
,
0.0
,
1.0
]]
CAM_INTRINSICS_1
:
[[
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
]]
CAM_INTRINSICS_2
:
[[
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
],
[
0.0
,
0.0
,
0.0
]]
TRACKING
:
LOG_FOLDER
:
/home/nvidia/catkin_ws/src/jfxrosperceiver/tracking_logs/
TIMING
:
false
SAVE_LOG
:
true
TRANS
:
[[
0.916303992271
,
-0.40038600564
,
0.008842683397
,
40611912.88483711
],
[
0.400390565395
,
0.915391683578
,
-0.041782874614
,
3462876.4089042605
],
[
0.008634760976
,
0.041826341301
,
0.999087572098
,
21.27533309
],
[
0.0
,
0.0
,
0.0
,
1.0
]]
BLIND_IN
:
[]
BLIND_OUT
:
[]
script/generate/N7_1/7-1.yaml
0 → 100644
View file @
c9f3aab8
NODE_NAME
:
7-1
CAMERA_LAYOUT
:
[
0
,
1
,
2
]
#-1代表没有此方向相机,非-1的值按照0,1,2排序
X_ROT_ANGLE
:
1
# 0代表x轴不旋转,仅微调;1代表x轴顺时针旋转90度;2代表顺时针旋转180度
POLICY_MASK
:
[
1
,
1
,
1
]
# 1代表这个方向加远处策略,-1代表不加策略
CAMERA_SERIAL_NO
:
[
21185406
,
21185390
,
21177824
]
DRIVE_DIRECTION
:
[
0
,
0
,
0
]
# 0为双向,1为单向朝左,2为单向朝右,3为单向朝上,4为单向朝下,-1代表没有
USE_BLIND
:
1
# -1 indicates no blind area in this loc is considered;
# 1 means normal blind area (one blind in, one blind out);
# 2 means two-way lane (one blind in, two blind out: each for one direction);
POINTPILLARS
:
MAX_NUM_PILLARS
:
20000
MAX_NUM_POINTS_PER_PILLAR
:
32
NUM_CLASS
:
5
SCORE_THRESHOLD
:
0.3
NMS_OVERLAP_THRESHOLD
:
0.5
PFE_OUT_SIZE
:
64
NUM_THREADS
:
64
BATCH_SIZE
:
1
PILLAR_SIZES
:
[
0.16
,
0.16
,
6
]
GRID_SIZES
:
[
512
,
1024
,
1
]
PC_T_RANGE
:
[
15.04341374235729
,
-5.260303364170211
,
150.0
,
30.0
,
19.38420271149741
,
28.0
,
-23.0
,
150.0
,
-150.0
,
-8.369847269674542
]
PC_RANGE
:
[
0
,
-81.92
,
-7.0
,
81.92
,
81.92
,
-1.0
]
PFE_ONNX_FILE
:
/home/nvidia/catkin_ws/src/jfxrosperceiver/pointpillars/build/models/4.0_N7_2/PillarVFE_JF_ep100_20000_4.0_N7_2.onnx
RPN_ONNX_FILE
:
/home/nvidia/catkin_ws/src/jfxrosperceiver/pointpillars/build/models/4.0_N7_2/RPNWithHead_JF_ep100_4.0_N7_2.onnx
IMAGE_SIZES
:
[[
2048
,
2448
],
[
2048
,
2448
],
[
2048
,
2448
]]
IMG_CONTOURS
:
[[[
744
,
520
],
[
2447
,
561
],
[
1347
,
328
],
[
2351
,
347
]],
[[
0
,
751
],
[
1979
,
790
],
[
0
,
548
],
[
1224
,
574
]],
[[
737
,
729
],
[
2447
,
680
],
[
1512
,
502
],
[
2447
,
468
]]]
PC_POLICY_ROTY
:
[[
3.141593
,
0.0
],
[
-1.591032
,
1.591032
],
[
1.550686
,
-1.550686
]]
PC_POLICY_AREA
:
[[[
1598
,
331
],
[
1797
,
339
],
[
1842
,
430
],
[
1796
,
544
],
[
1084
,
528
],
[
1373
,
413
],
[
1798
,
333
],
[
2223
,
344
],
[
2312
,
436
],
[
2403
,
563
],
[
1798
,
548
],
[
1840
,
425
]],
[[
251
,
557
],
[
469
,
563
],
[
553
,
626
],
[
739
,
770
],
[
369
,
757
],
[
294
,
641
],
[
471
,
559
],
[
752
,
565
],
[
960
,
661
],
[
1228
,
778
],
[
734
,
765
],
[
580
,
655
]],
[[
1651
,
493
],
[
1953
,
489
],
[
1833
,
581
],
[
1687
,
696
],
[
1142
,
716
],
[
1418
,
598
],
[
1951
,
483
],
[
2215
,
475
],
[
2173
,
573
],
[
2136
,
673
],
[
1674
,
704
],
[
1835
,
573
]]]
ORIGIN2KITTI
:
[[
-0.03414222029249569
,
-0.9993794541775686
,
0.008661140874264117
,
0.0
],
[
0.9993821935410669
,
-0.0340674395723183
,
0.008639490380331674
,
0.0
],
[
-0.008339066287306893
,
0.00895076134927045
,
0.999925169122532
,
-0.7000000000000002
],
[
0.0
,
0.0
,
0.0
,
1.0
]]
KITTI2ORIGIN
:
[[
-0.03414222029249568
,
0.9993821935410669
,
-0.008339066287306894
,
-0.005837346401114827
],
[
-0.9993794541775686
,
-0.03406743957231831
,
0.00895076134927045
,
0.0062655329444893165
],
[
0.008661140874264119
,
0.008639490380331674
,
0.9999251691225322
,
0.6999476183857727
],
[
0.0
,
0.0
,
0.0
,
1.0
]]
GROUND_Z_VALUE
:
[
-6.0
,
-6.0
,
-6.0
]
MINMAX_DEPTH
:
[
82.0
,
150.0
]
LIDAR_CAM_RS_0
:
[[
-0.995936
,
-0.0897805
,
0.0070823
,
-0.0132271
],
[
-0.0173271
,
0.11385
,
-0.993347
,
-0.239199
],
[
0.0883769
,
-0.989433
,
-0.114943
,
0.131749
],
[
0
,
0
,
0
,
1
]]
LIDAR_CAM_RS_1
:
[[
-0.155891
,
-0.987287
,
0.0310081
,
0.0516705
],
[
-0.0836811
,
-0.0180789
,
-0.996329
,
-0.194909
],
[
0.984223
,
-0.157914
,
-0.0797989
,
-0.0143181
],
[
0
,
0
,
0
,
1
]]
LIDAR_CAM_RS_2
:
[[
-0.130709
,
0.990636
,
-0.0394256
,
-0.0604812
],
[
0.11214
,
-0.0247386
,
-0.993384
,
-0.199602
],
[
-0.985058
,
-0.134266
,
-0.107857
,
0.530719
],
[
0
,
0
,
0
,
1
]]
CAM_INTRINSICS_0
:
[[
7350.0
,
0.0
,
1173.5
],
[
0.0
,
7364.8
,
999.1346
],
[
0.0
,
0.0
,
1.0
]]
CAM_INTRINSICS_1
:
[[
7293.442930597376
,
0.0
,
1182.551725157397
],
[
0.0
,
7304.495100903007
,
981.5291640436195
],
[
0.0
,
0.0
,
1.0
]]
CAM_INTRINSICS_2
:
[[
7552.764938482027
,
0.0
,
1228.4353420623622
],
[
0.0
,
7566.224849928247
,
1019.0673853747635
],
[
0.0
,
0.0
,
1.0
]]
TRACKING
:
LOG_FOLDER
:
/home/nvidia/catkin_ws/src/jfxrosperceiver/tracking_logs/
TIMING
:
false
TRANS
:
[[
6.60447598e-01
,
-7.50757873e-01
,
1.30958920e-02
,
4.06130966e+07
],
[
7.50822484e-01
,
6.60503983e-01
,
-2.45426620e-05
,
3.46271628e+06
],
[
-8.63146223e-03
,
9.84889828e-03
,
9.99914229e-01
,
1.87395959e+01
],
[
0.00000000e+00
,
0.00000000e+00
,
0.00000000e+00
,
1.00000000e+00
]]
BLIND_IN
:
[
0.8793207584354021
,
11.318516057393802
,
-11.726795120867939
,
12.364750077435513
]
BLIND_OUT
:
[
2.9499341591370176
,
10.918559387668694
,
-18.931044274997923
,
-10.873520715931155
]
BLIND_OUT_2
:
[]
script/trans_and_export_data_multi_auto.py
View file @
c9f3aab8
...
...
@@ -459,6 +459,19 @@ class NumpyEncoder(json.JSONEncoder):
return
obj
.
tolist
()
return
json
.
JSONEncoder
.
default
(
self
,
obj
)
car_yaw_cal_angle
=
{}
def
InitCarYawAngle
():
global
car_yaw_cal_angle
car_yaw_cal_angle
[
"N5_3"
]
=
79.89299572540227
car_yaw_cal_angle
[
"N2_1"
]
=
131.419987
car_yaw_cal_angle
[
"N2_3"
]
=
263.172408323
car_yaw_cal_angle
[
"N3_1"
]
=
272.497959364
car_yaw_cal_angle
[
"N3_2"
]
=
131.419987
car_yaw_cal_angle
[
"N5_1"
]
=
156.39647170561636
car_yaw_cal_angle
[
"N7_1"
]
=
131.419987
InitCarYawAngle
()
g_saveFileType
=
1
#0为pcd文件,1是bin文件
g_showCloud
=
0
#0不显示,1显示
...
...
@@ -585,7 +598,7 @@ threads = []
threadID
=
1
class
pcdThread
(
threading
.
Thread
):
def
__init__
(
self
,
threadID
,
name
,
start
,
idx
,
_dirs
,
_dir_pcd_list
,
save_list
,
jsn_list
,
trans
,
kit2o
,
box_info_count
):
def
__init__
(
self
,
threadID
,
name
,
start
,
idx
,
_dirs
,
_dir_pcd_list
,
save_list
,
jsn_list
,
trans
,
kit2o
,
box_info_count
,
_dir_g
):
threading
.
Thread
.
__init__
(
self
)
self
.
threadID
=
threadID
self
.
name
=
name
...
...
@@ -598,11 +611,13 @@ class pcdThread (threading.Thread):
self
.
trans
=
trans
self
.
kit2ori
=
kit2o
self
.
box_info_count
=
box_info_count
self
.
dir_g
=
_dir_g
def
run
(
self
):
global
g_save_count
global
MAX_SAVE_FILE_NUM
global
g_saveFileType
global
g_map_lock
global
car_yaw_cal_angle
print
(
"开启线程:"
+
self
.
name
)
isStop
=
0
index
=
self
.
begin
...
...
@@ -637,7 +652,7 @@ class pcdThread (threading.Thread):
# exportCenterBL = get_loc_from_origin([bbox[4][0], bbox[4][1], bbox[4][2]], 0, generate_Trans)
lidar_loc_ex
,
out_BL_ex
,
exportCenterBL
=
get_loc
([
bbox
[
4
][
0
],
bbox
[
4
][
1
],
bbox
[
4
][
2
],
bbox
[
6
][
0
],
bbox
[
6
][
1
],
bbox
[
6
][
2
],
bbox
[
2
]],
0
,
self
.
trans
,
self
.
kit2ori
)
# print(exportCenterBL)
angle2
=
car_yaw_cal
(
generate_car_yaw_cal_angle
,
bbox
[
2
])
angle2
=
car_yaw_cal
(
car_yaw_cal_angle
[
self
.
dir_g
]
,
bbox
[
2
])
g_map_lock
.
acquire
()
mapInfoExport
=
get_map_data
(
exportCenterBL
[
0
],
exportCenterBL
[
1
],
angle2
)
g_map_lock
.
release
()
...
...
@@ -698,30 +713,14 @@ class pcdThread (threading.Thread):
print
(
"退出线程:"
+
self
.
name
)
if
__name__
==
'__main__'
:
if
__name__
==
'__main__'
:
# origin_root_path = "/media/sf_shared/nodes/" #读取数据的总目录
# generate_root_path = "/media/sf_shared/5-3/"
origin_root_path
=
"/host/home/sata2/datasets/N19_annotations/"
#读取数据的总目录
generate_root_path
=
"/host/home/sata2/oscar/jfxmap_python/script/data/5-3/"
generate_car_yaw_cal_angle
=
79.89299572540227
generate_pcd_path
=
os
.
path
.
join
(
generate_root_path
,
"pcd/"
)
if
os
.
path
.
exists
(
generate_pcd_path
)
==
False
:
os
.
mkdir
(
generate_pcd_path
)
if
os
.
path
.
isdir
(
generate_pcd_path
)
==
False
:
os
.
remove
(
generate_pcd_path
)
os
.
mkdir
(
generate_pcd_path
)
generate_child_dir
=
"N5_3"
generate_cfg_path
=
generate_root_path
+
"config/5-3.yaml"
generate_cfg
=
read_yaml
(
generate_cfg_path
)
generate_Trans
=
generate_cfg
.
TRACKING
.
TRANS
generate_Trans
=
np
.
array
(
generate_Trans
)
generate_kitti2origin
=
generate_cfg
.
POINTPILLARS
.
KITTI2ORIGIN
generate_kitti2origin
=
np
.
array
(
generate_kitti2origin
)
generate_root_path
=
"/host/home/sata2/oscar/jfxmap_python/script/generate/"
# generate_car_yaw_cal_angle = 79.89299572540227
# p_dir = "/home/oscar/ros/git/jfxmap_python/jfxmap/"
p_dir
=
"/host/home/sata2/oscar/jfxmap_python/jfxmap/"
...
...
@@ -729,22 +728,11 @@ if __name__ == '__main__':
ret
=
init_jfxmap
(
p_dir
,
f_path
)
print
(
ret
)
base_file_path
=
os
.
path
.
join
(
generate_root_path
,
"base/1633640721.417269000.pcd"
)
g_xyzi
,
g_pcd
,
g_converted_pcd
=
parse_pandarmind_pcd
(
base_file_path
,
rotMat
[
generate_child_dir
])
# 计算点云图的地面平面
# converted_points = np.array(g_converted_pcd.points)
# b = np.where( (converted_points[:,2] <= -5.0) & (converted_points[:,2] > -7) )
# cropped_cropped = converted_points[b]
# print(cropped_cropped.shape)
# seg,m = ground_segmentation(data=cropped_cropped[:,:3])
m
=
[
1.11119401e-03
,
-
8.66741252e-04
,
1.60358817e-01
,
9.87057781e-01
]
save_cloud_list
=
[]
#保存点云的数组
save_json
=
{}
save_json
[
"annotations"
]
=
[]
save_json_list
=
[]
cloud_box_count
=
[]
#统计box的数据
dirsAll_g
=
os
.
listdir
(
generate_root_path
)
dirs_g
=
[]
for
file_g
in
dirsAll_g
:
if
os
.
path
.
isdir
(
generate_root_path
+
file_g
)
==
True
:
dirs_g
.
append
(
file_g
)
dir_pcd_list
=
{}
dirsAll
=
os
.
listdir
(
origin_root_path
)
...
...
@@ -768,123 +756,94 @@ if __name__ == '__main__':
anno
[
fileuri
]
=
an
[
'labels_box3D'
]
fp
.
close
()
dir_pcd_list
[
dir
]
.
append
(
anno
)
for
i
in
range
(
Thread_NUM
):
list
=
[]
save_cloud_list
.
append
(
list
)
jsn_list
=
[]
save_json_list
.
append
(
jsn_list
)
box_info_cout
=
{
'big'
:
0
,
'little'
:
0
,
'pedestrian'
:
0
,
'mid'
:
0
,
'cyclist'
:
0
}
cloud_box_count
.
append
(
box_info_cout
)
thread
=
pcdThread
(
i
,
"Thread"
+
str
(
i
)
,
i
,
Thread_NUM
,
dirs
,
dir_pcd_list
,
save_cloud_list
[
i
],
save_json_list
[
i
],
generate_Trans
,
generate_kitti2origin
,
cloud_box_count
[
i
])
thread
.
start
()
threads
.
append
(
thread
)
for
t
in
threads
:
t
.
join
()
for
_ind
,
cloud_i
in
enumerate
(
save_cloud_list
):
for
cloud
in
cloud_i
:
if
len
(
cloud
[
"boxes"
])
>=
10
:
Save_Cloud_File
(
cloud
,
save_json_list
[
_ind
])
for
t_idx
in
save_json_list
:
for
jsn
in
t_idx
:
save_json
[
"annotations"
]
.
append
(
jsn
)
jsn_path
=
os
.
path
.
join
(
generate_root_path
,
generate_child_dir
+
".json"
)
with
open
(
jsn_path
,
'w'
)
as
file_obj
:
json
.
dump
(
save_json
,
file_obj
,
cls
=
NumpyEncoder
,
indent
=
4
)
totel_count
=
{
'big'
:
0
,
'little'
:
0
,
'pedestrian'
:
0
,
'mid'
:
0
,
'cyclist'
:
0
}
for
count
in
cloud_box_count
:
totel_count
[
'big'
]
+=
count
[
'big'
]
totel_count
[
'little'
]
+=
count
[
'little'
]
totel_count
[
'pedestrian'
]
+=
count
[
'pedestrian'
]
totel_count
[
'mid'
]
+=
count
[
'mid'
]
totel_count
[
'cyclist'
]
+=
count
[
'cyclist'
]
cloud_box_count
.
append
(
totel_count
)
count_jsn_path
=
os
.
path
.
join
(
generate_root_path
,
"count.json"
)
with
open
(
count_jsn_path
,
'w'
)
as
file_o
:
json
.
dump
(
cloud_box_count
,
file_o
,
cls
=
NumpyEncoder
,
indent
=
4
)
# isStop = 0
# index = 0
# while isStop == 0:
# if g_save_count >= MAX_SAVE_FILE_NUM:
# print("finish g_save_count = ",g_save_count)
# break
# isDeal = 0
# for dir in dirs:
# if len(dir_pcd_list[dir][0]) > index:
# isDeal = 1
# pcd_file = dir_pcd_list[dir][0][index]
# anno = dir_pcd_list[dir][1]
# child_dir = dir
# if pcd_file not in anno:
# print('the anno is null : ', pcd_file)
# continue
# # print(pcd_file)
# boxx = anno[pcd_file]
# bbox_flag,bboxes = read_all_3d_bboxes(boxx, rotMat[child_dir])
# if bbox_flag == False or len(bboxes) < 1:
# continue
# xyzi,pcd,converted_pcd = parse_pandarmind_pcd(pcd_file, rotMat[child_dir])
# xyz = np.array(converted_pcd.points)
# if xyz.size == 0:
# continue;
# for bbox in bboxes:
# # exportCenterBL = get_loc_from_origin([bbox[4][0], bbox[4][1], bbox[4][2]], 0, generate_Trans)
# lidar_loc_ex,out_BL_ex,exportCenterBL = get_loc([bbox[4][0], bbox[4][1], bbox[4][2],bbox[6][0],bbox[6][1],bbox[6][2],bbox[2]], 0, generate_Trans,generate_kitti2origin)
# # print(exportCenterBL)
# angle2 = car_yaw_cal(generate_car_yaw_cal_angle,bbox[2])
# mapInfoExport = get_map_data(exportCenterBL[0],exportCenterBL[1],angle2)
# # print("call get ex data isInMap = ",mapInfoExport)
# if mapInfoExport[0] != 1:
# continue;
# laneAngle = mapInfoExport[10];
# detaAngel = laneAngle - angle2;
# while detaAngel > 180:
# detaAngel -= 360
# while detaAngel < -180:
# detaAngel += 360
# # print("angle = ",angle2," laneAngle = ",laneAngle," detaAngel = ",detaAngel)
# if bbox[0] != "pedestrian" and abs(detaAngel) > 30:
# continue;
# #获取到汽车点云符合条件,可以添加到新点云里
# # f1.write('%f,%f,%f,%f,%f,%f,%f,%f,%f,%f\n'%(exportCenterBL[0],exportCenterBL[1],bbox[4][0], bbox[4][1], bbox[4][2],bbox[6][0], bbox[6][1], bbox[6][2],angle2,laneAngle))
# name = pcd_file.split("/")[-1]
# if g_saveFileType == 1:
# name = name[0:-3] + "bin"
# idx = Check_Add_Cloud_box(save_cloud_list,bbox,g_converted_pcd,name,generate_pcd_path,index)
# if idx == -1:
# continue;
# flag = in_hull(xyz,bbox[1])
# pickcloud = xyz[flag]
# bottom_center = (bbox[1][5,:] + bbox[1][7,:]) / 2.0
# ground_z = (-m[3] - m[0] * bottom_center[0] - m[1] * bottom_center[1]) / m[2]
# delta_z = ground_z - bottom_center[2]
# dz = np.array([0,0,delta_z])
# pickcloud = np.add(pickcloud,dz)
# # print(pickcloud)
# bbox[1] += dz
# Add_Cloud_box(save_cloud_list,idx,bbox,pickcloud,save_json)
# if isDeal == 1:
# index += 1
# if index % 10 == 0:
# print("while index = ",index)
# # if index >= 10:
# # break
# else:
# isStop = 1
# print("finish all the data")
# for cloud in save_cloud_list:
# Save_Cloud_File(cloud,save_json)
# jsn_path = os.path.join(generate_root_path,generate_child_dir + ".json")
# with open(jsn_path,'w') as file_obj:
# json.dump(save_json,file_obj,cls=NumpyEncoder)
# # for file, num in g_pcd_info.items():
# # print("file = ",file,", box num = ",num)
# print("no save file num = ",g_no_save_count)
for
dir_g
in
dirs_g
:
pcd_list
=
glob
.
glob
(
os
.
path
.
join
(
generate_root_path
+
dir_g
,
"*.pcd"
))
if
len
(
pcd_list
)
<=
0
:
continue
yaml_list
=
glob
.
glob
(
os
.
path
.
join
(
generate_root_path
+
dir_g
,
"*.yaml"
))
if
len
(
yaml_list
)
<=
0
:
continue
plane_list
=
glob
.
glob
(
os
.
path
.
join
(
generate_root_path
+
dir_g
,
"*.json"
))
if
len
(
plane_list
)
<=
0
:
continue
generate_pcd_path
=
os
.
path
.
join
(
generate_root_path
+
dir_g
,
"pcd/"
)
if
os
.
path
.
exists
(
generate_pcd_path
)
==
False
:
os
.
mkdir
(
generate_pcd_path
)
if
os
.
path
.
isdir
(
generate_pcd_path
)
==
False
:
os
.
remove
(
generate_pcd_path
)
os
.
mkdir
(
generate_pcd_path
)
generate_child_dir
=
dir_g
generate_cfg_path
=
os
.
path
.
join
(
generate_root_path
+
dir_g
,
yaml_list
[
0
])
generate_cfg
=
read_yaml
(
generate_cfg_path
)
generate_Trans
=
generate_cfg
.
TRACKING
.
TRANS
generate_Trans
=
np
.
array
(
generate_Trans
)
generate_kitti2origin
=
generate_cfg
.
POINTPILLARS
.
KITTI2ORIGIN
generate_kitti2origin
=
np
.
array
(
generate_kitti2origin
)
base_file_path
=
os
.
path
.
join
(
generate_root_path
+
dir_g
,
pcd_list
[
0
])
g_xyzi
,
g_pcd
,
g_converted_pcd
=
parse_pandarmind_pcd
(
base_file_path
,
rotMat
[
generate_child_dir
])
# 计算点云图的地面平面
# converted_points = np.array(g_converted_pcd.points)
# b = np.where( (converted_points[:,2] <= -5.0) & (converted_points[:,2] > -7) )
# cropped_cropped = converted_points[b]
# print(cropped_cropped.shape)
# seg,m = ground_segmentation(data=cropped_cropped[:,:3])
# m = [ 1.11119401e-03, -8.66741252e-04, 1.60358817e-01, 9.87057781e-01]
jsn_file
=
os
.
path
.
join
(
generate_root_path
+
dir_g
,
plane_list
[
0
])
m
=
[]
with
open
(
jsn_file
,
'r'
,
encoding
=
'utf-8'
,
errors
=
'ignore'
)
as
fp
:
m
=
json
.
load
(
fp
)
save_cloud_list
=
[]
#保存点云的数组
save_json
=
{}
save_json
[
"annotations"
]
=
[]
save_json_list
=
[]
cloud_box_count
=
[]
#统计box的数据
for
i
in
range
(
Thread_NUM
):
list
=
[]
save_cloud_list
.
append
(
list
)
jsn_list
=
[]
save_json_list
.
append
(
jsn_list
)
box_info_cout
=
{
'big'
:
0
,
'little'
:
0
,
'pedestrian'
:
0
,
'mid'
:
0
,
'cyclist'
:
0
}
cloud_box_count
.
append
(
box_info_cout
)
thread
=
pcdThread
(
i
,
"Thread"
+
str
(
i
)
,
i
,
Thread_NUM
,
dirs
,
dir_pcd_list
,
save_cloud_list
[
i
],
save_json_list
[
i
],
generate_Trans
,
generate_kitti2origin
,
cloud_box_count
[
i
],
dir_g
)
thread
.
start
()
threads
.
append
(
thread
)
for
t
in
threads
:
t
.
join
()
for
_ind
,
cloud_i
in
enumerate
(
save_cloud_list
):
for
cloud
in
cloud_i
:
if
len
(
cloud
[
"boxes"
])
>=
10
:
Save_Cloud_File
(
cloud
,
save_json_list
[
_ind
])
for
t_idx
in
save_json_list
:
for
jsn
in
t_idx
:
save_json
[
"annotations"
]
.
append
(
jsn
)
jsn_path
=
os
.
path
.
join
(
generate_root_path
,
generate_child_dir
+
".json"
)
with
open
(
jsn_path
,
'w'
)
as
file_obj
:
json
.
dump
(
save_json
,
file_obj
,
cls
=
NumpyEncoder
,
indent
=
4
)
totel_count
=
{
'big'
:
0
,
'little'
:
0
,
'pedestrian'
:
0
,
'mid'
:
0
,
'cyclist'
:
0
}
for
count
in
cloud_box_count
:
totel_count
[
'big'
]
+=
count
[
'big'
]
totel_count
[
'little'
]
+=
count
[
'little'
]
totel_count
[
'pedestrian'
]
+=
count
[
'pedestrian'
]
totel_count
[
'mid'
]
+=
count
[
'mid'
]
totel_count
[
'cyclist'
]
+=
count
[
'cyclist'
]
cloud_box_count
.
append
(
totel_count
)
count_jsn_path
=
os
.
path
.
join
(
generate_root_path
,
"count.json"
)
with
open
(
count_jsn_path
,
'w'
)
as
file_o
:
json
.
dump
(
cloud_box_count
,
file_o
,
cls
=
NumpyEncoder
,
indent
=
4
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment