mbox series

[bug#59607,0/8] Upscale your anime pictures, now with 99% less malware

Message ID a9bdd1f5c70f0879615809184653358d7f07def3.camel@gmail.com
Headers show
Series Upscale your anime pictures, now with 99% less malware | expand


Liliana Marie Prikler Nov. 26, 2022, 11:47 a.m. UTC
Hi Guix,

A certain post on This Week in GNOME [1] particular mentioning [2] got
me curious as to what Tencent is up to with their machine learning
As it turns out, ncnn is a rather powerful platform that allows running
neural networks on your GPU via Vulkan.  That's right, Vulkan, none of
that CUDA bs.  Sadly, the training part appears to still be done using
good ol' pytorch, so I packaged the python variant as well.  To convert
models from one to the other, you do have to jump through some hoops
via onnx, but ncnn comes with a tool that translates from onnx' format
to theirs, so it should hopefully also be useful in other applications.

In order to keep the Guix package clean, I removed "everything" that
depends on CUDA and also dropped (some/most? of) the bits that download
pretrained models over the aether.  However, I only performed
non-automatic tests with a pretrained model for real-esrgan-ncnn, so
take this with a grain of salt.

Anyway, I hope you have some good, freedom-respecting time with this.


[1] https://thisweek.gnome.org/posts/2022/11/twig-70/
[2] https://gitlab.com/TheEvilSkeleton/Upscaler

Liliana Marie Prikler (8):
  gnu: Add ncnn.
  gnu: Add real-esrgan-ncnn.
  gnu: Add python-addict.
  gnu: Add python-basicsr.
  gnu: Add python-filterpy.
  gnu: Add python-facexlib.
  gnu: Add python-gfpgan.
  gnu: Add python-real-esrgan.

 gnu/local.mk                                  |    2 +
 gnu/packages/machine-learning.scm             |  318 ++
 .../patches/python-basicsr-fuck-nvidia.patch  | 3233 +++++++++++++++++
 .../python-gfpgan-unfuse-leaky-relu.patch     |   57 +
 ...real-resgan-ncnn-simplify-model-path.patch |  195 +
 gnu/packages/python-science.scm               |   50 +
 gnu/packages/python-xyz.scm                   |   18 +
 7 files changed, 3873 insertions(+)
 create mode 100644 gnu/packages/patches/python-basicsr-fuck-nvidia.patch
 create mode 100644 gnu/packages/patches/python-gfpgan-unfuse-leaky-relu.patch
 create mode 100644 gnu/packages/patches/real-resgan-ncnn-simplify-model-path.patch

base-commit: 7e0ad0dd0f2829d6f3776648ba7c88acf9888d7a