Demo image processing software 
We provide a demo program that implements the following image processing algorithms in C++:
Download link  — 64-bit Windows console application. The program requires processor with AVX support (Sandy Bridge CPU or newer/compatible). Legacy version  — 32-bit Windows console application for CPU with SSE2 only.
Instructions 
The program implements warping algorithm from the paper Deblurred images post-processing by Poisson warping .
Program usage:
(programname) <operation> [options] <input_image> <output_image>
List of operations:
  warp  - perform image sharpening by grid warping. Available options:
    -sigma (value) - (mandatory) set blur parameter for the input image, range: 1.0 to 20.0, default value is 2.0
    -power (value) - set warping power, range: 0.0 to 5.0, default value is 1.0
    -1d - apply one-dimensional algorithm (faster but lower quality
  basicedges  - detect basic edges - edges good for artifact analysis
    -scale (value) - set scale parameter, range: 1.0 to 20.0, default value is 4.0
  gaussblur  - blur input image using Gauss filter
    -sigma (value) - (mandatory) Gauss filter radius
    -noise (value) - Add Gaussian noise with provided stddev
  resample  - edge directional resampling (x2)
    -method  - Use specific image resampling algorithm:
      edr (default) - Our edge-directional algorithm
      srcnn - SRCNN (deep learning)
      si1, si2, si3 - SI-1, SI-2 and SI-3 respectively
    -cfile  - Read coefficient data from the specified file
    -selfsim - Use the input image to compute the interpolation kernels instead of predefined values ('edr' method only)
  tgv  - deblurring and denoising using TGV regularization, the arguments are:
     - input image;
     - blur kernel - it will automatically normalized;
     - output image;
     - first regularization parameter;
     - second regularization parameter;
     If you need only denoising without deblurring, please use a 1x1 image with single white pixel.
  help  - display this screen
  other operations coming soon...
Supported image formats: BMP, PNG, JPEG, GIF, TIFF
   
 
Examples 
demo warp -sigma 4 -power 1.5 input.png warp.png
demo basicedges -scale 4 input.png be.png 
Notes 
Optimal power  for grid warping is 1.0. Using greater power value may result in artifacts due to discontinuous warping. 
Parameter sigma  corresponds the to radius of Gaussian blur that approximates actual blur for the given image. Typical value for real blurry images is 2.0. 
Parameter scale  in the basic edges detection algorithm controls the edge width 
 
Source code 
The source code is available at GitHub