This project is a personal reimplementation of the NowcastNet inference framework. The original research, titled "Skilful nowcasting of extreme precipitation with NowcastNet," by Yuchen Zhang, Mingsheng Long et al., was published in Nature and can be accessed at https://www.nature.com/articles/s41586-023-06184-4. Additionally, the original code by Yuchen Zhang is available at https://doi.org/10.24433/CO.0832447.v1.
Q: Why reimplement? A: Just for learning :)
-
Cloning the repository:
git clone https://github.com/VioletsOleander/nowcastnet-rewritten.git
-
Install the dependencies (pick one of the following methods):
-
Sync dependencies using uv:
uv sync
-
Make sure
python>=3.10,<3.11
, and either install from PyPI:pip install -U nowcastnet-rewritten
or install from local:
pip install .
-
Notes:
- uv is recommended for managing dependencies for full reproducibility.
- To ensure compatibility with this reimplementation's architecture, weights have been modified and are available for download from Hugging Face.
To perform inference, run inference.py
with the required arguments.
To view all available arguments, use:
python inference.py -h
It is recommended to use the --config_path
option to specify the configuration file, for example:
python inference.py --config_path ../configs/inference.toml
An example configuration file is provided in the configs/
directory.
You can also specify options directly from the command line, for example:
python inference.py \
--case_type normal \
--device cuda:0 \
path_to_weights \
path_to_data \
path_to_result
Note: If
--config_path
is specified, other command line options will be ignored.
1024 x 1024:
512 x 512: