Giter Site home page Giter Site logo

geoproj's Introduction

GeoProj

The source code of Blind Geometric Distortion Correction on Images Through Deep Learning by Li et al, CVPR 2019.

Prerequisites

  • Linux or Windows
  • Python 3
  • CPU or NVIDIA GPU + CUDA CuDNN

Getting Started

Dataset Generation

In order to train the model using the provided code, the data needs to be generated in a certain manner.

You can use any distortion-free images to generate the dataset. In this paper, we use Places365-Standard dataset at the resolution of 512*512 as the original non-distorted images to generate the 256*256 dataset.

Run the following command for dataset generation:

python data/dataset_generate.py [--sourcedir [PATH]] [--datasetdir [PATH]] 
                                [--trainnum [NUMBER]] [--testnum [NUMBER]]

--sourcedir           Path to original non-distorted images
--datasetdir          Path to the generated dataset
--trainnum            Number of generated training samples
--testnum             Number of generated testing samples

Training

Run the following command for help message about optional arguments like learning rate, dataset directory, etc.

python trainNetS.py --h # if you want to train GeoNetS
python trainNetM.py --h # if you want to train GeoNetM

Use a Pre-trained Model

You can download the pretrained model here.

You can also use eval.py and modify the model path, image path and saved result path to your own directory to generate your own results.

Resampling

Import resample.resampling.rectification function to resample the distorted image by the forward flow.

The distorted image should be a Numpy array with the shape of H*W*3 for a color image or H*W for a greyscale image, the forward flow should be an array with the shape of 2*H*W.

The function will return the resulting image and a mask to indicate whether each pixel will converge within the maximum iteration.

Citation

@inproceedings{li2019blind,
  title={Blind Geometric Distortion Correction on Images Through Deep Learning},
  author={Li, Xiaoyu and Zhang, Bo and Sander, Pedro V and Liao, Jing},
  booktitle={Proceedings of the IEEE Conference on Computer Vision and Pattern Recognition},
  pages={4855--4864},
  year={2019}
}

geoproj's People

Contributors

xiaoyu258 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.