An AI-powered adaptive seat positioning system that predicts ideal longitudinal seat distance and seat angle from the driver’s height. Designed for embedded use on systems like Raspberry Pi or NVIDIA Jetson, this project trains and runs lightweight regression models with user feedback support.
- One input, two predictions: Maps driver Height (cm) → True Longitudinal Distance and Seat Angle
- XGBoost-based regressors with support for real-time inference
- User feedback loop: Adjustments can be saved and used to retrain the model instantly
- Excel dataset support with safe appends via openpyxl
- Cross-platform (Mac, Windows, Ubuntu)
- Train two separate XGBoost regressors using historical seat fitment data
- Save the trained models in a single
.pth
file usingjoblib
- During inference, prompt the user for height
- Predict seat distance and seat angle
- If the prediction is wrong, collect corrected values, save them back to the Excel file, and retrain the models
Your Excel file (Extrapolated_Participant_Data.xlsx
) should contain the following columns:
Height (cm) | True Long. Distance (cm) | True Seat Angle (from vertical) |
---|---|---|
172 | 85.94 | 14.75 |
... | ... | ... |
git clone https://github.com/YourUsername/AutoSeatAdjust-EmbeddedAI.git
cd AutoSeatAdjust-EmbeddedAI
python3 -m venv venv
source venv/bin/activate
pip install -r dependencies.txt
py -m venv venv
venv\Scripts\Activate.ps1
pip install -r dependencies.txt
python src/DTreeClassifier.py
- Loads the Excel dataset
- Trains two regressors
- Saves them to
models/pred_model.pth
python src/infer_height.py
- Input: Driver height
- Output: Predicted seat position and angle
- If the prediction is off, enter your corrected values and the system will:
- Append them to the dataset
- Retrain the model with the new datapoint
Any new data collected during use is:
- Stored safely in the same Excel file
- Used for immediate retraining
- Persisted via
joblib
in a.pth
file
- Add GUI for in-car use
- Replace height input with real-time eye-tracking using OpenCV
- Deploy on Jetson Orin or Raspberry Pi with model quantization
- Integrate calibration profiles per driver
MIT License – use, modify, or deploy freely.
Need help? Open an issue or start a discussion! 💬