All Projects → keijiro → Waifu2xbarracuda

keijiro / Waifu2xbarracuda

Licence: mit
Waifu2x Unity Barracuda implementation

Waifu2xBarracuda

Waifu2xBarracuda is a Waifu2x implementation with the Unity Barracuda neural network inference library.

Comparisons

  • Left: Bilinear filter only
  • Right: 200% upscaling with Waifu2x + Bilinear filter

screenshot

screenshot

screenshot

screenshot

How To Use

  • Create a Waifu2x.Waifu2xScaler object with specifying a Waifu2x ONNX model and the pre/post-processing compute shader.
  • Call CreateScaledTexture with a source texture. It returns a RenderTexture object with 200% size.
  • Dispose the Waifu2x.Waifu2xScaler object when it's no longer needed.
using (var scaler = new Waifu2xScaler(model, compute))
{
    texture_foo_x2 = scaler.CreateScaledTexture(texture_foo);
    texture_bar_x2 = scaler.CreateScaledTexture(texture_bar);
    ...
}

At the moment, this package only contains the upconv_7 anime style models. There are four models for different noise filter levels. Usually, the strongest one (noise3) gives good results, but you should decrease the strength if the image contains detailed texture elements.

Acknowledgements

ONNX files

The ONNX files contained in the Assets/Waifu2x/ONNX are converted by tcyrus. Please check the waifu2x-onnx repository for further details.

Test assets

This repository contains the following image materials:

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].