Skip to content

LukaDoncic0/GAN-argcPredNet

Repository files navigation

Description

This paper introduces a Generative Adversarial Networks, GAN-argcPredNet v1.0, which can be used for radar-based precipitation nowcasting.

The generator is stored in the argc_PredNet.py file, and the completion process of building GAN-argcPredNet is in the GAN-argcPredNet_Train.py file.

This network is trained to be a prediction model that extrapolates the next 7 frames from the first 5 frames.

GAN-argcPredNet v1.0

This model references the depth coding structure of the prednetmodel proposed by bill-lotter, and is based on the rgcLSTM design idea of NellyElsayed.We modified the recurrent unit in the network and used it as a generator.In addition, a two-channel input network with four layers of convolution is the discriminator of GAN-argcPredNet.

image

Radar data

The experimental data is the radar mosaic of Shenzhen area provided by Guangdong Meteorological Bureau. It does not support the open sharing.For data access, please contact Kun Zheng (ZhengK@cug.edu.cn) and Yan Liu (liuyan_@cug.edu.cn).

Train

The files of the training model are stored in the GAN-argcPredNet_Train.py and argcPredNet_Train.py files. The advantages of GAN-argcPredNet can be seen through the training experiments on these two models.

GAN-argcPredNet

Save the weight files of the generator and the discriminator respectively:

self.generator.save_weights(weights_dir+'gen_weight'+epoch + '.h5')

self.critic.save_weights(weights_dir+'dis_weight' + epoch + '.h5')

During the training process, the compute_train_ssim() function is responsible for generating and saving the comparison image of the training process, and displaying the training loss value.

argcPrdNet

The Saveimages() function will save the contrast images that are constantly changing during the training process. Save the weight file generated during the training process:

model.save_weights (WEIGHTS_DIR + str(epoch) + '.h5') 

Prediction

The prediction code is stored in the predict.py file. X_test = hkl.load(TEST_DIR) loads the test set file, model.load_weights(WEIGHTS_DIR) loads the trained weight file. Then through test_predictImag() functions respectively generate prediction data.Finally save the prediction data by:

hkl.dump(Preimage, PREDICT_DIR).

NOTE

You can cite the GAN-argcPredNet model repository as follows:
https://github.com/LukaDoncic0/GAN-argcPredNet

Reference

@article{elsayed2018reduced,

title={Reduced-Gate Convolutional LSTM Using Predictive Coding for Spatiotemporal Prediction},

author={Elsayed, Nelly and Maida, Anthony S and Bayoumi, Magdy},

journal={arXiv preprint arXiv:1810.07251},

year={2018}

}

AND

@article{lotter2016deep,

title={Deep predictive coding networks for video prediction and unsupervised learning

author={Lotter, William and Kreiman, Gabriel and Cox, David},

journal={arXiv preprint arXiv:1605.08104},

year={2016}

}

About

GAN-argcPredNet v1.0: A Generative Adversarial Model for Radar Echo Extrapolation Based on Convolutional Recurrent Units

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages