Major Features
- User-defined TensorFlow classification models with custom configuration parameters can now be imported, in addition to the Single Telescope, CNN-RNN, and Variable Input Network models provided with CTLearn.
- Image mapping added for all CTA telescope types as well as VERITAS.
- Data loading, data processing, and image mapping have been refactored into separate classes with methods to load HDF5 files, preprocess generic IACT data, and map telescope data to square images. Each class is defined in a separate module.
- Configuration now uses YAML instead of INI format, allowing lists and dictionaries to be configured cleanly.
Minor Improvements
- Benchmark configuration files and results have been produced using Single Telescope and CNN-RNN models for all CTA telescope types.
- Package installation now uses a conda environment file to resolve dependencies, providing clean and light installation and removal.
- Training and prediction now handled as two modes within `run_model`.
- Updated `run_multiple_configurations.py` to allow configuration parameter combinations to be grouped together.
- Image mapping is now configurable with options for padding and hexagonal conversion algorithm.
- Prediction output is now NumPy-compatible and includes the run number, event number, and telescope ID (if applicable) of each example.
Bug Fixes and Other Changes
- Renamed project to CTLearn from CTALearn.
- Added BSD 3-Clause license.
- TensorFlow version updated to v1.9.0.
- Clarified telescope sorting options.
- Fixed errors in and otherwise updated supplementary scripts.
- Moved unsupported models to `models/deprecated` and will be removed in the next release.
- Removed `plot_gpu_util.py`.
- Added workaround to handle overflow error in tel_id parameter of ImageExtractor HDF5 file format.
- Removed dependency on TensorFlow-Slim.