Code Monkey home page Code Monkey logo

eegan's Introduction

Edge Enhanced GAN For Remote Sensing Image Superresolution (EEGAN)

This is an implementation of the SRGAN model proposed in the paper (Edge Enhanced GAN For Remote Sensing Image Superresolution) with TensorFlow.

Requirements

  • Python 3
  • TensorFlow 2.1(GPU)
  • OpenCV
  • tqdm
  • requests
  • Pillow
  • Matplotlib

I. Pretrain the VGG-19 model

Download the ImageNet dataset and preprocess them with:

$ cd vgg19/imagenet
$ python get_urls.py
$ python create_db.py
$ python download_images.py
$ python preprocess.py

Train with VGG-19:

$ cd vgg19
$ python train.py

Or you can download the pretrained model file: vgg19_model.tar.gz

II. Train the EEGAN model

Train with EEGAN:

Download the satellite image from Kaggle Open Source Draper_Satellite_Dataset and preprocess them to obetain the training samples with

$ cd src/lfw
$ python preprocess.py

Then train the model EEGAN with:

$ cd src
$ python train.py

The evaluation results will be stored in "src/result".

Test with EEGAN:

The pretrained weight can be downloaded in: Pretrained_Weight.

Put the test images into "src/test/test30" or your own folder, then

$ cd src/test
$ python test.py

The tes results will be stored in "src/test/result30".

Adversarial loss

This implementation adopts the least squares loss function instead of the sigmoid cross entropy loss function for the discriminator. See the details: Least Squares Generative Adversarial Networks

Content loss

The paper says VGG54 is the perceptually most convincing results. But this implemetation uses all the feature maps generated by every layer (i.e. phi12, phi22, phi34, phi44, phi54) within the VGG19 network.

If you find our work useful in your research or publications, please consider citing:

@ARTICLE{8677274, author={K. {Jiang} and Z. {Wang} and P. {Yi} and G. {Wang} and T. {Lu} and J. {Jiang}}, journal={IEEE Transactions on Geoscience and Remote Sensing}, title={Edge-Enhanced GAN for Remote Sensing Image Superresolution}, year={2019}, volume={}, number={}, pages={1-14}, keywords={Image edge detection;Image reconstruction;Satellites;Feature extraction;Image resolution;Gallium nitride;Generative adversarial networks;Adversarial learning;dense connection;edge enhancement;remote sensing imagery;superresolution.}, doi={10.1109/TGRS.2019.2902431}, ISSN={0196-2892}, month={},}

eegan's People

Contributors

amirzenoozi avatar kuijiang94 avatar

Stargazers

 avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.