1. 21 Dec, 2020 1 commit
    • DocGarbanzo's avatar
      * Add support for multi-dimensional model input and making the x, y interface... · ff35d5f5
      DocGarbanzo authored
      * Add support for multi-dimensional model input and making the x, y interface symmetrical on the model / training interface: (#707)
      
      - x/y_transform extract x, y as numpy arrays or floats out of the record
        - x/y_translate convert the numpy arrays of floats into tf-readable dictionaries used in tf data.
      * Simplify model interface by implementing output_types() directly in the base class using output_shapes() dictionary.
      * Adding developer guide for own model development
      * Updated donkey command documentation
      * Improve asserts and type hints in keras.py
      * Added missing __init__.py in parts module.
      * Add cool ascii text for donkey init and update yml and setup files including mypy
      * Remove model training test from Travis and change the test to relative convergence. This avoids random fall overs in CI.
      * Added test of tf.data as used in the training pipeline through re-implementation of data transformation from tub records to tf expected dictionaries, for all currently supported models.
      ff35d5f5
  2. 17 Dec, 2020 1 commit
    • DocGarbanzo's avatar
      Change training pipeline from tf.Sequence to tf.data (#701) · d70ee60d
      DocGarbanzo authored
      * Improve pipeline use: move from building list of pipelines of single transforms to building a single pipeline with a list of transforms (actually just looping through function to go from TubRecord -> image -> augment -> normalise -> x and TubRecord -> y).
      
      Fixed TfmIterators and TfmIterables.
      * Iterables are the containers and are sized - these are the user objects
      * Iterators are protocol objects to allow iteration, they have no logic and are local to the Iterables
      * build/map_pipeline both return sized Iterables
      * removed all batch logic, this is not required
      * still commented but left code that uses generator based pipeline as this is simpler code
      
      Using new small temporary pipeline generator
      * this keeps the TubSequence lazy and avoids to roll out the pipeline into a list
      * added a test to check consistency of the pipeline
      * remove empty (after moved) augmentation file
      * removed augmentation from old tub (as it's not needed and we removed the old augmentation)
      
      New pipeline changes:
      * moved augmentation into own class that is used above and can be used a  threaded or non-threaded part
      * moved train functionality out of template and added 'donkey train', train.py just a simple dummy script for backward compatibility
      
      * Address code reviews:
      * Re-base on current dev to use un-altered sequence.py
      * Add iterator consistency test to pipeline tests
      * Undo changes in fast_stretch.py
      * better tf shape manipulation
      * small code improvements in training.py
      * remove sleep in augment part
      
      * Address code reviews:
      * Add clearing of tubrecord list and minor renamings
      d70ee60d
  3. 16 Dec, 2020 1 commit
  4. 13 Dec, 2020 3 commits
  5. 12 Dec, 2020 3 commits
  6. 09 Dec, 2020 2 commits
  7. 01 Dec, 2020 1 commit
  8. 08 Nov, 2020 4 commits
  9. 07 Nov, 2020 1 commit
  10. 01 Nov, 2020 1 commit
  11. 28 Oct, 2020 1 commit
  12. 25 Oct, 2020 1 commit
  13. 24 Oct, 2020 2 commits
  14. 22 Oct, 2020 1 commit
  15. 21 Oct, 2020 2 commits
  16. 20 Oct, 2020 1 commit
  17. 19 Oct, 2020 2 commits
    • DGarbanzo's avatar
      Integrate osx into travis. (#665) · aa7d73bb
      DGarbanzo authored
      aa7d73bb
    • wallarug's avatar
      Windows Doc Updates (#668) · abec9e0d
      wallarug authored
      Added more options for Installing Donkey Car on Windows.  
      
      - Anaconda
      - Native
      - Windows Subsystem for Linux (WSL) - experiential
      
      These options give more flexibility and could make deployment easier for some individuals.  I personally always install donkey car natively onto Python installed on the System.  I will be looking more into WSL going forward as it has some interesting benefits.
      abec9e0d
  18. 18 Oct, 2020 3 commits
  19. 17 Oct, 2020 4 commits
  20. 12 Oct, 2020 1 commit
    • DGarbanzo's avatar
      Add testing for training: (#651) · 178565d1
      DGarbanzo authored
      * added example tub data as tar.gz in tests with 1000 records
      * check validation data size in train
      * created new test_train.py
      * added support for read-only tub, required to create r/o tub in tmp dir
      * changed loss in categorical model to equally weight throttle and steering
      * changed mod on scripts to u+x
      178565d1
  21. 10 Oct, 2020 2 commits
  22. 09 Oct, 2020 1 commit
    • DGarbanzo's avatar
      Improvements to the car app and handling of KerasPilot parts: (#648) · d52f37e4
      DGarbanzo authored
      * Improvements to the car app and handling of KerasPilot parts:
      * Created a simpler webserver or joystick car app by modifying and renaming the basic_web into basic template and switched this on as default. Also renamed the target from 'manage.py' to 'drive.py' because there is only driving and no training included
      * Simplified the handling of uint8 and float32 numpy image arrays. KerasPilot.run() now expects uint8 data, transforms into float32 and delegates to its children. The corresponding rescaling step is gone from the car app
      * smaller updates/fixes to environment and config files
      * added support for tflite pilots in makemovie
      
      * Improvements to the car app and handling of KerasPilot parts:
      * Added docstring to KerasPilot methods
      * Fixed bad merge for model types in complete config
      d52f37e4
  23. 05 Oct, 2020 1 commit
    • Rahul Ravikumar's avatar
      Donkeycar 4.x release. (#644) · 4580ec74
      Rahul Ravikumar authored
      ## Major Improvements
      
      - New Datastore.
      - More ways to pre-process image data for training. 
      - Use the 2.x version of Tensorflow. 
      - Lots of other minor improvements. 
      4580ec74