Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
225 commits
Select commit Hold shift + click to select a range
cffde30
Added homework description and starter code
krishauser Jan 27, 2025
32c90b4
Fixed Klampt drawing problem onboard... still mysterious
krishauser Jan 28, 2025
efc06c9
Merged with s2025
Jan 28, 2025
938af15
Merge branch 'main' into s2025
krishauser Jan 29, 2025
97a3de8
Merge branch 'main' into s2025_teamB
krishauser Jan 29, 2025
bc5b69f
hw1_control_b
joe-hung Jan 31, 2025
be692a1
Fix setup issues and add user to the docker image
harishkumarbalaji Feb 2, 2025
9206116
Dummy commit to trigger sonarqube
harishkumarbalaji Feb 2, 2025
0fcdff4
Fix the requrements.txt to take from the current repo
harishkumarbalaji Feb 2, 2025
cff1e29
Update the docker compose service name
harishkumarbalaji Feb 2, 2025
f51c6a0
Adding github action for linting and documentation
animeshsingh98 Feb 2, 2025
86cd573
Adding github action trigger on all commits
animeshsingh98 Feb 2, 2025
0d4627c
Upgrading version of upload artifact
animeshsingh98 Feb 2, 2025
daaaa17
Optimizing the workflow yaml
animeshsingh98 Feb 2, 2025
6100ea5
Optimizing the workflow yaml
animeshsingh98 Feb 2, 2025
3a2f8e1
Correcting in the key names
animeshsingh98 Feb 2, 2025
79c3a68
Removing requirements.txt installation in documentation
animeshsingh98 Feb 2, 2025
ad4af5b
Correcting name of build artifact for documentation folder
animeshsingh98 Feb 2, 2025
e1a0f8e
Removing action trigger on PR
animeshsingh98 Feb 2, 2025
753e5ba
Update missing depedencies and ultralytics python packagein requirements
harishkumarbalaji Feb 3, 2025
a7a2e8c
Add. Instructions to check if the container toolkit is working as exp…
harishkumarbalaji Feb 3, 2025
1f6fb93
Update. Readme with latest depedencies
harishkumarbalaji Feb 3, 2025
6618e8f
Update. Readme with post install steps
harishkumarbalaji Feb 3, 2025
1a26276
Better docstring
krishauser Feb 3, 2025
4d95b63
Merge pull request #100 from krishauser/s2025_linting
krishauser Feb 3, 2025
0175174
Fixed to work with Klampt 0.10
krishauser Feb 3, 2025
a871397
Fixed launch file to work with standard perception pipeline
krishauser Feb 3, 2025
be315de
Fixed diff that was somehow committed
krishauser Feb 3, 2025
7a66dc1
Merge branch 's2025' into s2025_teamB
krishauser Feb 3, 2025
38deb79
Merge pull request #98 from krishauser/infra-b/fix_setup_issues
krishauser Feb 3, 2025
235f58a
1st_version_for_sim
joe-hung Feb 3, 2025
6f18feb
Update volume mounting to access the files
harishkumarbalaji Feb 3, 2025
ca430be
Merge pull request #101 from krishauser/infra-b/update_missing_depede…
krishauser Feb 3, 2025
704efa4
blink
joe-hung Feb 5, 2025
6e8e8de
Merge branch 's2025_teamB' into Control_teamB for fixed perception
joe-hung Feb 5, 2025
b1ef6d7
blink_component.py complete
joe-hung Feb 5, 2025
af9d634
blink_component.py fixed
joe-hung Feb 5, 2025
f529c92
blink_component.py add state flag
joe-hung Feb 5, 2025
9e67bac
implement perception part 1
Feb 5, 2025
9a9acff
merge incoming change from teamB
Feb 5, 2025
6bcab9f
change prompt
KenC1014 Feb 5, 2025
cf906ef
updated blink.py
joe-hung Feb 5, 2025
995409b
gather data for rosbag
KenC1014 Feb 5, 2025
30be879
Fix setup machine script and add volume mounts for dbus
harishkumarbalaji Feb 6, 2025
dde23bc
Fixed fake_fake simulation calls and rename from YIELD -> YIELDING
krishauser Feb 6, 2025
ab28abf
Merge pull request #103 from krishauser/infra-b/fix_setup_machine_scrpt
krishauser Feb 6, 2025
9c13eca
Added rosbag sub, visualization and comments
nvikramraj Feb 7, 2025
055e13c
ignores models
nvikramraj Feb 7, 2025
48fe475
ignores models
nvikramraj Feb 7, 2025
aca3247
add vis publisher and error handling
KenC1014 Feb 8, 2025
8aed8c7
switch back to GEM e4 topic
KenC1014 Feb 8, 2025
0cd147d
remove person_detector
KenC1014 Feb 8, 2025
e818a1c
Merge branch 'PerceptionB_main' into perception_b_vikram
LucasEby Feb 8, 2025
be27708
Merge pull request #104 from krishauser/perception_b_vikram
LucasEby Feb 8, 2025
6978bb1
Merge branch 's2025_teamB' into PerceptionB_main so we can share perc…
LucasEby Feb 9, 2025
abe73fc
added instructions for mac installation
pravshot Feb 9, 2025
a0b7b9c
upload rosbag to onedrive
danielzhuang11 Feb 10, 2025
d2fc472
update name
danielzhuang11 Feb 10, 2025
d39ca65
blink_comonent.py for onboard
joe-hung Feb 10, 2025
9d336fd
change to share with me
danielzhuang11 Feb 11, 2025
86b968c
url fix
danielzhuang11 Feb 11, 2025
3524597
hw part 1.1 1.2 finish
Feb 11, 2025
bc5a2d6
Merge branch 'Control_teamB' of https://github.com/krishauser/GEMstac…
Feb 11, 2025
82ef252
moved url to config file
danielzhuang11 Feb 12, 2025
faa0396
test fusion
KenC1014 Feb 12, 2025
d6018ae
base implementation Part 1
sanjaypokkali Feb 12, 2025
3040e56
Update Dockerfile.cuda11.8
RuimingShen Feb 12, 2025
876ff39
basic stanley control implementation
joe-hung Feb 12, 2025
ca9ca3e
fixSDK
RuimingShen Feb 13, 2025
14407a7
remove-c
RuimingShen Feb 13, 2025
093e155
Merge pull request #105 from krishauser/PerceptionB_main
LucasEby Feb 13, 2025
97b6dc6
Lidar to Base frame transformation
nvikramraj Feb 13, 2025
b087f8d
added few comments
nvikramraj Feb 13, 2025
42c0985
hw1.3 unfinished
Feb 14, 2025
475b8c9
align lidar pc2 to camera frame
KenC1014 Feb 15, 2025
1355d5f
extract clouds in 2d
KenC1014 Feb 15, 2025
8316a20
converted lidar to cam frame
nvikramraj Feb 15, 2025
dc69933
add od3 dialect
KenC1014 Feb 15, 2025
2872618
add o3d import
KenC1014 Feb 15, 2025
bf69981
downsample pc2
KenC1014 Feb 15, 2025
ced4804
rename variables
KenC1014 Feb 15, 2025
4b93f5f
Merge pull request #106 from krishauser/fix-dockerfile
RuimingShen Feb 15, 2025
d319eaa
extract 3D pc2 and visualize
KenC1014 Feb 15, 2025
49f45ee
segregate points by pedestrains
KenC1014 Feb 15, 2025
d3c9e4c
update comments
KenC1014 Feb 15, 2025
c23b36c
rename variables
KenC1014 Feb 15, 2025
5aa571b
remove empty line
KenC1014 Feb 15, 2025
9008a9a
add ground and max dist filter
KenC1014 Feb 15, 2025
c31546d
add comments
KenC1014 Feb 15, 2025
006b555
update comments
KenC1014 Feb 15, 2025
6867f1a
update pedestrian_yield_logo.py
derekzyn Feb 16, 2025
b35252b
Finalize fusion.py with pedestrian centers, vel, dims, AgentStates. M…
lukasdumasius Feb 17, 2025
eeeeb54
Port fusion.py to pedestrian_detection.py
lukasdumasius Feb 17, 2025
19ad11e
Add transform.py instructions
lukasdumasius Feb 17, 2025
0a21424
pedestrian_detection.py type hints
lukasdumasius Feb 17, 2025
4c3df3d
Update minimum distance calculation
derekzyn Feb 17, 2025
503a403
Fixed ROS type typo
krishauser Feb 17, 2025
c7246ed
pedestrian_detection.py add time for velocity
lukasdumasius Feb 17, 2025
eb0d555
hw1 part1.3 finished
joe-hung Feb 17, 2025
aa1aae9
Fixed ROS type typo
joe-hung Feb 17, 2025
7743899
hw1 part2 fixed some error to run on vehicle
Feb 17, 2025
b62c6fc
integrate updated depth filter and 3D bboxes vis
KenC1014 Feb 17, 2025
6cd1d4f
apply lidar to vehicle transform to centers
KenC1014 Feb 18, 2025
b36a49b
Merge branch 'main' into s2025
krishauser Feb 18, 2025
6fd3702
Merge branch 's2025' into s2025_teamB
krishauser Feb 18, 2025
7ad05fd
Check len(0) ouster points pedestrian_detection.py
lukasdumasius Feb 18, 2025
68d0a75
fix lidar frame mapping
KenC1014 Feb 18, 2025
c596eda
Merge branch 'PerceptionB_ped_fusion_done' of https://github.com/kris…
KenC1014 Feb 18, 2025
0857f0c
reslove conflicts
KenC1014 Feb 18, 2025
fcca8c0
toggle vehicle frame
KenC1014 Feb 18, 2025
d820c3c
toggle vehicle frame
KenC1014 Feb 18, 2025
248911c
add comments for bug fixes
KenC1014 Feb 18, 2025
5700e09
handle empty list
KenC1014 Feb 18, 2025
887aefe
Updated longitudinal Planner
brijesh2709 Feb 18, 2025
59753a8
Merge branch 's2025_teamB' into teamb_planning
brijesh2709 Feb 18, 2025
412df4b
Merge remote-tracking branch 'origin/teamb_planning_part2' into teamb…
brijesh2709 Feb 18, 2025
3c126f4
Testing for 3 peds in simultion
brijesh2709 Feb 18, 2025
bf4f433
Found some frame problems in parent branch
LucasEby Feb 18, 2025
8a7ceb6
Wrote in logic to finish part 3. Still need to implement 1-2 transfor…
LucasEby Feb 18, 2025
d5ef999
change model to hang_v1, fixed typo
Feb 18, 2025
2aa0ba6
Fixed find_vels_and_ids logic bugs, AgentState bugs, timing bugs, etc
LucasEby Feb 18, 2025
f080070
I think I updated a comment
LucasEby Feb 18, 2025
db6d689
Cleaned up code a bit. Will add Vikram's suggestions in Slack next
LucasEby Feb 18, 2025
bf80bbe
Accidentally moved a few lines of code. Fixed the error that resulted
LucasEby Feb 18, 2025
6addddb
In the process of converting to start frame. Pushing current WORKING …
LucasEby Feb 19, 2025
7c48e56
initial plot metrics
pravshot Feb 19, 2025
3fcd14a
added safety factor scale
pravshot Feb 19, 2025
a18d187
Took absolutely forever to find the secret sauce. Please excuse the mess
LucasEby Feb 19, 2025
0b5d88b
finally think I figured out start frame transform. In the process of …
LucasEby Feb 19, 2025
1d6f1ad
Merge branch 'perception_b_vikram' into G8_velocity_and_ids
nvikramraj Feb 19, 2025
96b9885
Pushing code so Lukas can try to replicate error message
LucasEby Feb 19, 2025
f7dcffc
Merge branch 'G8_velocity_and_ids' of github.com:krishauser/GEMstack …
LucasEby Feb 19, 2025
a936d3d
Fixed logic for gate which tosses out points
LucasEby Feb 19, 2025
98f445f
Update pedestrian_detection.py
lukasdumasius Feb 19, 2025
dad7cc1
Update pedestrian_detection.py
lukasdumasius Feb 19, 2025
502f3a8
Sending untransformed version to planning team
LucasEby Feb 19, 2025
cd42261
Merge branch 'PerceptionB_ped_fusion_done' into G8_velocity_and_ids
LucasEby Feb 19, 2025
873f531
Merge pull request #122 from krishauser/G8_velocity_and_ids
LucasEby Feb 19, 2025
4fd89ff
Merge pull request #123 from krishauser/PerceptionB_ped_fusion_done
LucasEby Feb 19, 2025
a469876
Merge branch 's2025_teamB' into PerceptionB_main
LucasEby Feb 19, 2025
57811aa
integrated t vehicle to start
nvikramraj Feb 20, 2025
7e0a49f
syntax error fix
nvikramraj Feb 20, 2025
57c54b9
code refactor for start_frame
nvikramraj Feb 22, 2025
f2b1778
Updated velocity and id code to work off of data that's already in st…
LucasEby Feb 22, 2025
04bb209
Merge pull request #126 from krishauser/G8_find_vels_and_ids_sf
nvikramraj Feb 22, 2025
bc16a40
Putting this here for now not sure what the issue is
LucasEby Feb 22, 2025
0de5980
Simplified velocity and id function
LucasEby Feb 22, 2025
a33fe36
Add pedestrain tracking in mpl viz
harishkumarbalaji Feb 23, 2025
8b9b241
component replay fix and added ros topic replay
danielzhuang11 Feb 23, 2025
410e13e
Simplified and fixed agent state dimensions
LucasEby Feb 23, 2025
ed5db78
Fixed a dict clearing issue
LucasEby Feb 23, 2025
163e0a1
Merge pull request #128 from krishauser/G8_simplified_velocity_and_ids
LucasEby Feb 23, 2025
de29fb1
Merge pull request #124 from krishauser/PerceptionB_main
LucasEby Feb 23, 2025
a2ff9f6
pedestrian_detection.py Convert obj_dims to start frame aligned bbox
lukasdumasius Feb 23, 2025
9601d8e
gnss integration
nvikramraj Feb 24, 2025
ac16563
added viz and edge case fix
nvikramraj Feb 24, 2025
c849544
remove viz
nvikramraj Feb 24, 2025
98b3d99
Merge branch 'perceptionb_working_gnss' into s2025_teamB
nvikramraj Feb 24, 2025
2b413fa
Added items committed to s2024
krishauser Feb 24, 2025
4e7b3c1
Merged update
krishauser Feb 24, 2025
43bb3e8
Changed time.time to self.time
krishauser Feb 24, 2025
b4ba3bb
Merge branch 's2025' into s2025_teamB
krishauser Feb 24, 2025
e0cd0a8
Merge pull request #131 from krishauser/s2025_teamB
lukasdumasius Feb 24, 2025
90b5924
fixed gnss
joe-hung Feb 24, 2025
c69ec0e
fixed typo
joe-hung Feb 24, 2025
d3f6190
Merge branch 'PerceptionB_main' into perceptionb_start_frame
lukasdumasius Feb 24, 2025
32f0025
Merge pull request #132 from krishauser/perceptionb_start_frame
lukasdumasius Feb 24, 2025
2545b85
cleaned up code and fixed obj_centers issue in agent creation
LucasEby Feb 24, 2025
c86af3f
Update planning team part 1 code
derekzyn Feb 24, 2025
331e40a
added cross track error
pravshot Feb 24, 2025
46f569f
adding state estimation part
muralikarteek7 Feb 24, 2025
23abe25
pedestrian_detection.py fix pedestrian centers, dims in start. Rviz w…
lukasdumasius Feb 24, 2025
630933a
added position graph
pravshot Feb 24, 2025
a1fae81
Create plot.py
Jugthegreat Feb 24, 2025
f4d7e2d
Related start frame agents to vehicle frame agents. Fixed time
LucasEby Feb 24, 2025
6e2dc41
Related start frame agents to vehicle frame agents. Fixed time
LucasEby Feb 24, 2025
dbd87be
Merge branch 'G8_adding_current_frame_to_Pmain' of github.com:krishau…
LucasEby Feb 24, 2025
89d8daf
Removed unnecessary print statement
LucasEby Feb 24, 2025
9919c39
Merge pull request #134 from krishauser/G8_adding_current_frame_to_Pmain
LucasEby Feb 25, 2025
326f585
Merge pull request #135 from krishauser/PerceptionB_main
LucasEby Feb 25, 2025
5c6af6a
edge case fix
nvikramraj Feb 25, 2025
cb06d6b
Merge remote-tracking branch 'origin/s2025_teamB' into infra-b/mpl_vi…
harishkumarbalaji Feb 25, 2025
735832f
Add feature to separate pedestrain and velocity tracking in mpl visua…
harishkumarbalaji Feb 25, 2025
e2f8ee6
Merge branch 'PerceptionB_main' into infra-b/mpl_viz_pedestrian_traje…
harishkumarbalaji Feb 25, 2025
74acb15
Added exception to edge case and fixed return values for similar exce…
LucasEby Feb 25, 2025
3ab83e9
Merge pull request #136 from krishauser/PerceptionB_main
LucasEby Feb 25, 2025
c8a236c
Merge branch 's2025_teamB' into infra-b/mpl_viz_pedestrian_trajectory
harishkumarbalaji Feb 25, 2025
e416888
Fix zed sdk version for cuda11.8
harishkumarbalaji Feb 25, 2025
97799bc
remove other changes
harishkumarbalaji Feb 25, 2025
d1c9ca9
Fix indent
harishkumarbalaji Feb 25, 2025
94f2d69
Merge pull request #138 from krishauser/infra-b/fix_setup_issues
harishkumarbalaji Feb 25, 2025
1f6127f
added POC end-to-end testing
danielzhuang11 Feb 25, 2025
49d1bc6
updated graphs with comfort/safety scale
pravshot Feb 25, 2025
576e051
Merge remote-tracking branch 'refs/remotes/origin/infraBComfortSafety…
pravshot Feb 25, 2025
176817f
removed plot.py file
pravshot Feb 25, 2025
cc49274
Merge pull request #137 from krishauser/infra-b/mpl_viz_pedestrian_tr…
harishkumarbalaji Feb 25, 2025
f7d3431
removed unecessary files
danielzhuang11 Feb 25, 2025
c14d7af
added pedestrian distance metric and cleaned code
pravshot Feb 25, 2025
ec44350
check for 0 pedestrians in log
pravshot Feb 26, 2025
534436f
added documentation
pravshot Feb 26, 2025
2026784
merging final codes
muralikarteek7 Feb 26, 2025
6fdef01
adding gem_e4.yaml to knowledge
muralikarteek7 Feb 26, 2025
d70a56b
Merge branch 's2025_teamB' into infra-b/rosbag_pipeline
danielzhuang11 Feb 26, 2025
2e02586
Merge branch 's2025_teamB' into infra-b/rosbag_pipeline
danielzhuang11 Feb 26, 2025
2d7fa31
revert fixed route yaml
danielzhuang11 Feb 26, 2025
3dc5cba
more clean up
danielzhuang11 Feb 26, 2025
a115c40
Merge pull request #140 from krishauser/infraBComfortSafetyMetrics
pravshot Feb 27, 2025
be896d4
Fine tuned pure_pursuit
joe-hung Feb 27, 2025
ef8a573
remove unnecessary log file
joe-hung Feb 27, 2025
6caa8ff
modified for simulation with pedestrian detection
derekzyn Feb 27, 2025
a3569c8
Update longitudinal_planning.py
derekzyn Feb 27, 2025
005b49c
Update pedestrian_yield_logic.py
derekzyn Feb 27, 2025
31f770c
Merge branch 's2025_teamB' of https://github.com/krishauser/GEMstack …
joe-hung Feb 27, 2025
8807b62
Delete GEMstack/onboard/perception/pedestrian_detection.py
brijesh2709 Feb 27, 2025
8120d99
Delete GEMstack/knowledge/routes/forward_15m.csv
brijesh2709 Feb 27, 2025
c769c83
Delete homework/longitudinal_planning.py
brijesh2709 Feb 27, 2025
7c15f2d
added docs
danielzhuang11 Feb 27, 2025
fe6e644
Merge pull request #145 from krishauser/infra-b/rosbag_pipeline
danielzhuang11 Feb 27, 2025
15b7dda
Merge branch 's2025_teamB' into teamb_planning
brijesh2709 Feb 27, 2025
173405b
Merge pull request #148 from krishauser/teamb_planning
brijesh2709 Feb 27, 2025
6d59db3
fixing recent commit revert issues
LucasEby Feb 28, 2025
cd7c7c2
Merge pull request #152 from krishauser/recent-merge-hotfix
LucasEby Feb 28, 2025
78e2554
initial base implementation
shraddhaamohan Apr 8, 2025
2c488e7
Add parking planning code
sanjaypokkali Apr 8, 2025
4fb8f79
added summoning planning code
jeffbyju Apr 8, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
62 changes: 62 additions & 0 deletions .github/workflows/python-app.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
# This workflow will install Python dependencies, run tests and lint with a single version of Python
# For more information see: https://docs.github.com/en/actions/automating-builds-and-tests/building-and-testing-python

name: Python application

on:
push:
branches:
- '**'


permissions:
contents: read

jobs:
PEP-Guidelines:

runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3
- name: Set up Python 3.10
uses: actions/setup-python@v3
with:
python-version: "3.10"
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install flake8 flake8-docstrings pep8-naming
- name: Lint with flake8
run: |
# stop the build if there are Python syntax errors or undefined names
flake8 ./GEMstack --count --select=E9,F63,F7,F82 --show-source --statistics --exclude=__init__.py || exit 1
# to enable more advanced checks on the repo, uncomment the lines below (There are around 3000 violations)
# flake8 ./GEMstack --ignore=D,C901,E402,E231 --count --max-complexity=10 --max-line-length=127 --statistics --exclude=__init__.py || exit 1
# if we want to enable documentation checks, uncomment the line below
# flake8 ./GEMstack --ignore=E128,E402,E501,F401 --docstring-convention pep257 --max-line-length=120 --exclude=__init__.py || exit 1
continue-on-error: false

Documentation:

runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v3
- name: Set up Python 3.10
uses: actions/setup-python@v3
with:
python-version: "3.10"
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install sphinx sphinx-rtd-theme
- name: Generate Documentation
run: |
# stop the build if there are Python syntax errors or undefined names
sphinx-build -b html docs docs/build
- name: Save Documentation as Artifact
uses: actions/upload-artifact@v4
with:
name: documentation
path: docs/build
17 changes: 17 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -165,3 +165,20 @@ cython_debug/
# and can be added to the global gitignore or merged into this file. For a more nuclear
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
#.idea/

# ZED run files
**/*.run
.vscode/
setup/zed_sdk.run
cuda/
onedrive_config.json
zed_sdk.run
ZED_SDK_Ubuntu20_cuda11.8_v4.0.8.zstd.run
ros.asc

homework/yolov8n.pt
homework/yolo11n.pt
GEMstack/knowledge/detection/yolov8n.pt
GEMstack/knowledge/detection/yolo11n.pt
yolov8n.pt
yolo11n.pt
Binary file added GEMstack/knowledge/calibration/extrinsics.npz
Binary file not shown.
66 changes: 61 additions & 5 deletions GEMstack/knowledge/calibration/gem_e4.yaml
Original file line number Diff line number Diff line change
@@ -1,7 +1,63 @@
calibration_date: "2024-03-05" # Date of calibration YYYY-MM-DD
reference: rear_axle_center # rear axle center
rear_axle_height: 0.33 # height of rear axle center above flat ground
gnss_location: [1.10,0,1.62] # meters, taken from https://github.com/hangcui1201/POLARIS_GEM_e2_Real/blob/main/vehicle_drivers/gem_gnss_control/scripts/gem_gnss_tracker_stanley_rtk.py. Note conflict with pure pursuit location?
gnss_yaw: 0.0 # radians
T_frontcamera_vehicle:
- - 0.04979815921110274
- -0.02889308605338095
- 0.998341277156963
- 0.6874899022540225
- - -0.9986898492450907
- 0.010343220052680617
- 0.05011489006575621
- -0.006750728511462573
- - -0.011774038000135968
- -0.9995289850272167
- -0.02834016107658961
- -0.07694233627246522
- - 0.0
- 0.0
- 0.0
- 1.0
T_toplidar_frontcamera:
- - 0.029096143490519977
- -0.9995463314295703
- -0.007781115579835407
- -0.045768971801312515
- - -0.005777780139254174
- 0.007616104089319731
- -0.999954305063568
- -0.3868171492765085
- - 0.9995599190096819
- 0.02913977151915098
- -0.005553559684576381
- -0.6975440651652165
- - 0.0
- 0.0
- 0.0
- 1.0
T_toplidar_vehicle:
- - 0.9995177984237671
- -0.020904183387756348
- 0.022959932684898376
- 0.0
- - 0.020975051447749138
- 0.9997758865356445
- -0.0028501423075795174
- 0.0
- - -0.0228952094912529
- 0.003330353880301118
- 0.9997323155403137
- 0.33000001311302185
- - 0.0
- 0.0
- 0.0
- 1.0
date: '2025-02-25 22:31:02.057447'
calibration_type: absolute_vehicle_calibration
gnss_location:
- 1.1
- 0
- 1.62
gnss_yaw: 0.0
rear_axle_height: 0.33
reference: rear_axle_center
vehicle: gem_e4
top_lidar: !include "gem_e4_ouster.yaml"
front_camera: !include "gem_e4_oak.yaml"
7 changes: 7 additions & 0 deletions GEMstack/knowledge/calibration/intrinsic.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
{
"fx": 684.8333129882812,
"fy": 684.6096801757812,
"cx": 573.37109375,
"cy": 363.700927734375
}

14 changes: 13 additions & 1 deletion GEMstack/knowledge/defaults/computation_graph.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -44,11 +44,23 @@ components:
inputs: [vehicle, roadgraph, mission]
outputs: route
- driving_logic:
inputs: all
inputs:
outputs: intent
- parking_component: # one way
inputs: all
outputs: mission_plan
- summon_component: # one way
inputs: all
outputs: route
- route_planning_component: # one way
inputs: all
outputs: route
- motion_planning:
inputs: all
outputs: trajectory
- trajectory_tracking:
inputs: [vehicle, trajectory]
outputs:
- signaling:
inputs: [intent]
outputs:
4 changes: 2 additions & 2 deletions GEMstack/knowledge/defaults/current.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -14,10 +14,10 @@ control:
pure_pursuit:
lookahead: 2.0
lookahead_scale: 3.0
crosstrack_gain: 1.0
crosstrack_gain: 0.5 # default: 1
desired_speed: trajectory
longitudinal_control:
pid_p: 1.0
pid_p: 1.5
pid_i: 0.1
pid_d: 0.0

Expand Down
8 changes: 8 additions & 0 deletions GEMstack/knowledge/vehicle/dynamics.py
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@ def acceleration_to_pedal_positions(acceleration : float, velocity : float, pitc
Returns tuple (accelerator_pedal_position, brake_pedal_position, desired_gear)
"""
model = settings.get('vehicle.dynamics.acceleration_model','hang_v1')

if model == 'hang_v1':
if gear != 1:
print("WARNING can't handle gears other than 1 yet")
Expand All @@ -36,6 +37,13 @@ def acceleration_to_pedal_positions(acceleration : float, velocity : float, pitc
else:
brake_percent = brake_active_range[0] + -(acceleration+dry_decel)/max_brake * (brake_active_range[1]-brake_active_range[0])
throttle_percent = 0

print("accel : {:.3f}".format(acceleration))
print("vel : {:.3f}".format(velocity))
print("gear : {}".format(gear))
print("gas : {:.2f}".format(throttle_percent))
print("brake : {:.2f}".format(brake_percent))

return (max(throttle_percent,0.0),max(brake_percent,0.0),1)

elif model == 'kris_v1':
Expand Down
2 changes: 1 addition & 1 deletion GEMstack/knowledge/vehicle/gem_e4_dynamics.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ max_accelerator_power: #Watts. Power at max accelerator pedal, by gear
- 10000.0
max_accelerator_power_reverse: 10000.0 #Watts. Power (backwards) in reverse gear

acceleration_model : kris_v1
acceleration_model : hang_v1 # kris_v1
accelerator_active_range : [0.2, 1.0] #range of accelerator pedal where output acceleration is not flat
brake_active_range : [0,1] #range of brake pedal where output deceleration is not flat

Expand Down
2 changes: 1 addition & 1 deletion GEMstack/mathutils/dubins.py
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ def derivative(self,x,u):
right = [-fwd[1],fwd[0]]
phi = u[1]
d = u[0]
return np.array([fwd[0]*d,fwd[1]*d,phi])
return np.array([fwd[0]*d,fwd[1]*d,phi*d])


class DubinsCarIntegrator(ControlSpace):
Expand Down
21 changes: 21 additions & 0 deletions GEMstack/mathutils/transforms.py
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,14 @@ def vector_dist(v1, v2) -> float:
"""Euclidean distance between two vectors"""
return vo.distance(v1,v2)

def vector_dot(v1, v2) -> float:
"""Dot product between two vectors"""
return vo.dot(v1,v2)

def vector_cross(v1, v2) -> float:
"""Cross product between two 2D vectors"""
return vo.cross(v1,v2)

def vector2_angle(v1, v2 = None) -> float:
"""find the ccw angle bewtween two 2d vectors"""
if v2 is None:
Expand Down Expand Up @@ -123,3 +131,16 @@ def xy_to_lat_lon(x_east : float, y_north : float, lat_reference : float, lon_re
# convert GNSS waypoints into local fixed frame reprented in x and y
lat, lon = axy.xy2ll(x_east, y_north, lat_reference, lon_reference)
return lat, lon

def quaternion_to_euler(x : float, y : float, z : float, w : float):
t0 = +2.0 * (w * x + y * z)
t1 = +1.0 - 2.0 * (x * x + y * y)
roll = np.arctan2(t0, t1)
t2 = +2.0 * (w * y - z * x)
t2 = +1.0 if t2 > +1.0 else t2
t2 = -1.0 if t2 < -1.0 else t2
pitch = np.arcsin(t2)
t3 = +2.0 * (w * z + x * y)
t4 = +1.0 - 2.0 * (y * y + z * z)
yaw = np.arctan2(t3, t4)
return [roll, pitch, yaw]
Loading
Loading