Automatic Pedestrian Avoiding Vehicles in GTAV. It works ... when it does.
Presentation Video: https://www.youtube.com/watch?v=K5tWRnS-N8U&feature=youtu.be
- Yilun Chen
- Project Architect. Designed and implemented the Perception Engine.
- Helped implementing and debugging the Keyboard Emulator and Data Visualization Engine.
- Jingxuan Wang
- Designed and implemented the Keyboard Emulator and the Screen Capturer.
- Designed customized byte packet format to efficiently receive command.
- Yida Wang
- Designed and implemented the Data Visualization Engine.
- Boosted capabilities of the engine to support live rendering of multiple objects.
- Bruce Qin
- Designed and implemented the Data Ingestion Engine.
- Significantly improved performance of Ingestion Engine by 8-10 times.
- Classes: Used by Data Visualization Engine to draw different objects.
- Sockets: Used by Data Ingestion Engine, Keyboard Emulator and Data Visualization Engine.
- Threading: Used by Data Visualization Engine.
- OpenGL: Used by Data Visualization Engine.
-
GTAV_SDC runs on Windows only.
-
Make sure to use python 3.7
-
python -m pip install -r requirements.txt
-
Install protobuf https://github.com/protocolbuffers/protobuf
-
Download contents of https://github.com/tensorflow/models into tensorflow directory and add that directory to environment variables.
-
(Optional) Install CUDA (for GPU acceleration)
-
Install GTAV and run it in windowed mode, resolution 800*600, and pull it to the top left of the screen.
-
Run
.\GDIPlus_ScreenCap.exeto start taking screenshots. -
Run
python3 .\obj_detection.pyto start the Data Ingestion Engine and the Perception Engine. -
Run
.\KeyBoardEmulation.exeto start the Keyboard Emulator. -
Run
.\visualization_engine\release\visualization_engine.exeto start the Visualization Engine. -
GTAV_SDC should be fully up and running. Try running into pedestrians and watch GTAV_SDC save them all!