Welcome to the Ultralytics WAVE repository β the cutting-edge solution for the machine learning driven analysis and interpretation of waveform data in particle physics! π
Here, we introduce WAveform Vector Exploitation (WAVE), a novel approach that uses Deep Learning to readout and reconstruct signals from particle physics detectors. This repository contains our open-source codebase and aims to foster collaboration and innovation in this exciting intersection of ML and physics.
The primary goal of this project is to develop and share Machine Learning techniques that can be applied to full-waveform time-of-flight detectors. These advanced methods are designed to enhance signal processing and interpretation, thereby pushing the boundaries of what's possible in particle physics research.
- Implementation of WAVE using PyTorch and TensorFlow.
- Codebase designed for ease of use and adaptability.
- Support for running WAVE on Google Cloud Platform (GCP).
- Sample images illustrating waveform analysis.
Before you dive into waveform vector exploitation with our WAVE code, make sure your machine is set up with the following:
- Python 3.7 or later, plus these packages installed with
pip3 install -U -r requirements.txt
:numpy
scipy
torch
(version 0.4.0 or later)tensorflow
(version 1.8.0 or later)plotly
(optional, for visualization)
You can run the WAVE models using the following scripts:
- To use our PyTorch implementation, run
wave_pytorch.py
. - For TensorFlow users, you can run
wave_tf.py
. - If you're looking to deploy on Google Cloud Platform, explore
gcp/wave_pytorch_gcp.py
.
Explore the beauty of waveform signals and training process visualization with the images below:
If you use this code in your research or wish to refer to the WAVE methodology, please cite the following paper:
- Jocher, G., Nishimura, K., Koblanski, J. and Li, V. (2018). WAVE: Machine Learning for Full-Waveform Time-Of-Flight Detectors. Available at: Arxiv.org.
We value each contribution and invite you to participate in developing this pioneering ML approach for physics! Whether you're sharpening bugs, proposing new features, or enriching our documentation, find out how to contribute through our Contributing Guide. Also, let us know your thoughts by completing our Survey. A massive thank you π to everyone involved!
Ultralytics is pleased to offer dual licensing options to accommodate a wide range of uses:
- AGPL-3.0 License: Our default open-source license, which is OSI-approved and encourages open collaboration and knowledge sharing, is perfect for students, educators, and enthusiasts.
- Enterprise License: For commercial applications that require a more flexible licensing arrangement, our enterprise license allows integration of Ultralytics software into proprietary products and services. Reach out through Ultralytics Licensing for more details.
For bug reports, feature requests, and contributions, head to GitHub Issues. For questions and discussions about this project and other Ultralytics endeavors, join us on Discord!