{"id":24607608,"url":"https://github.com/adrianmarino/self-driving-car-model","last_synced_at":"2026-05-05T14:07:32.012Z","repository":{"id":89013262,"uuid":"159585208","full_name":"adrianmarino/self-driving-car-model","owner":"adrianmarino","description":"Steering wheel angle predictor","archived":false,"fork":false,"pushed_at":"2019-03-10T03:16:18.000Z","size":135088,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-10-10T01:03:02.711Z","etag":null,"topics":["autonomous","cnn","conda","keras","machine-learning","opencv","python","self-driving-cars"],"latest_commit_sha":null,"homepage":"","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/adrianmarino.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2018-11-29T00:45:58.000Z","updated_at":"2019-03-10T12:25:04.000Z","dependencies_parsed_at":"2023-06-13T13:30:31.348Z","dependency_job_id":null,"html_url":"https://github.com/adrianmarino/self-driving-car-model","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/adrianmarino/self-driving-car-model","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adrianmarino%2Fself-driving-car-model","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adrianmarino%2Fself-driving-car-model/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adrianmarino%2Fself-driving-car-model/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adrianmarino%2Fself-driving-car-model/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/adrianmarino","download_url":"https://codeload.github.com/adrianmarino/self-driving-car-model/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/adrianmarino%2Fself-driving-car-model/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32652589,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-05T11:29:49.557Z","status":"ssl_error","status_checked_at":"2026-05-05T11:29:48.587Z","response_time":54,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.5:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["autonomous","cnn","conda","keras","machine-learning","opencv","python","self-driving-cars"],"created_at":"2025-01-24T17:39:06.968Z","updated_at":"2026-05-05T14:07:32.006Z","avatar_url":"https://github.com/adrianmarino.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"#  Self driving car model\n\n* The model learn to control steering wheel angle.\n* Throttle \u0026 Break is controlled by a [PI Controller](https://www.youtube.com/watch?v=VVOi2dbtxC0).\n* The model was trained using all tracks of [Udacity self-driving-car-simator](https://github.com/udacity/self-driving-car-sim) _Version 2_ and tested with track 2 of _Version 1_ . The idea was try model with a track that it never saw.\n* The model was based to [End-to-End Deep Learning for Self-Driving Cars](https://devblogs.nvidia.com/deep-learning-self-driving-cars/) network arquitecture.\n\n## Test videos\n\n**Test 1**: Test model on track that was used to generate training \u0026 test samples.\n\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"http://www.youtube.com/watch?v=B5Q4MbLvtwI\" target=\"_tab\"/\u003e\n    \u003cimg src=\"http://img.youtube.com/vi/B5Q4MbLvtwI/0.jpg\" \n        title=\"Track 2 of self-driving-car-simator Version 2\" \n        alt=\"Track 2 of self-driving-car-simator Version 2\"/\u003e\n    \u003c/a\u003e\n\u003c/p\u003e\n\n**Test 2**: Test model over a track that it never saw.\n\n\u003cp align=\"center\"\u003e\n    \u003ca href=\"http://www.youtube.com/watch?v=FAYoct9GfQc\" target=\"_tab\"/\u003e\n    \u003cimg src=\"http://img.youtube.com/vi/FAYoct9GfQc/0.jpg\" \n        title=\"Track 2 of self-driving-car-simator Version 1\" \n        alt=\"Track 2 of self-driving-car-simator Version 1\"/\u003e\n    \u003c/a\u003e\n\u003c/p\u003e\n\n## Requeriments\n\n* [anaconda](https://www.anaconda.com/download/#linux)\n* 7z\n* A respectable video card (i.e. [GeForce GTX 1060](https://www.nvidia.com/en-us/geforce/products/10series/geforce-gtx-1060/) or higher)\n\n## Setup\n\n**Step 1**: Create project environment.\n\n```bash\n$ conda env create --file environment.yml\n```\n\n**Step 2**: Activate environment.\n```bash\n$ conda activate self-driving-car-model\n```\n**Note**: This step is required before run `train_mode.py` or `drive.py`.\n\n## Train model\n\nYou can train and adjust model from [\nSelf driving car model analysis\n](https://github.com/adrianmarino/self-driving-car-model/blob/master/model-analysis.ipynb) notebook or use \n`train_model.py` script. \nFirst of all you need a dataset, but already exist a dataset that was created to train the model, so you can download this. To train model follow next steps:\n\n**Step 1**: Activate environment.\n\n**Step 2**: Download dataset from [here](https://drive.google.com/file/d/1O84dTrE2j1J9xhPmlJdVwRJ55WcJlMQN/view?usp=sharing) to project path. \n \n**Step 3**: Extract dataset.\n```bash\n$ 7z x self-driving-car-dataset.7z\n```\n\n**Step 4**: Train model (using `train_model.py` script).\n```bash\n$ python train_model.py\n```\n**Notes**\n* This script load model last weights from /checkpoints path if it exists.\n* Can change epochs and learning rate with `--epochs` value `--lr` value.\n\n**Step 5**: Monitor train/validation loss and steering angle RMSE from [Tensorboard](https://www.tensorflow.org/guide/summaries_and_tensorboard). First of all you need run tensor board as follows:\n```bash\n$ tensorboard --logdir logs\n```\n**Note**: `train_model.py` script write metrics under `./logs` directory and tensoboard read from this.\n\n**Step 6**: Go to [http://localhost:6006](http://localhost:6006) url.\n\n\n## Play model\n\nTo test model with a track that it never saw use [self-driving-car-sim](https://github.com/udacity/self-driving-car-sim) _Version 1_. You can also test model with any track from _Version 2_, but the model already know this tracks, given these were used to generate the training and validation samples.\n\n### To play model\n\n**Step 1**: Download [self-driving-car-sim](https://github.com/udacity/self-driving-car-sim) _Version 1_.\n\n**Step 2**: Execute simulator, select _Track 2_ and press _Autonomous Mode_.\n\n**Step 3**: Activate environment.\n\n**Step 4**: Execute model client.\n\n```bash\n$ python drive.py checkpoints/weights__loss_0.0525__rmse_0.2055.h5\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadrianmarino%2Fself-driving-car-model","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fadrianmarino%2Fself-driving-car-model","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fadrianmarino%2Fself-driving-car-model/lists"}