跳转到主要内容

使用SWIG实现的nihui/realcugan-ncnn-vulkan的Python FFI

项目描述

realcugan ncnn Vulkan Python

CI

简介

使用SWIG实现的nihui/realcugan-ncnn-vulkan的Python FFI。

realcugan-ncnn-vulkan 是nihui对realcugan转换器的ncnn实现。使用Vulkan API在Intel / AMD / Nvidia上运行速度快。

此项目仅封装了原始RealCUGAN类。因此,除了核心的放大和降噪功能之外,其他功能(如多线程加载和保存)不可用。当然,实现了自动瓷砖大小和预填充设置,所以不用担心。

下载

现在有linux x64、Windows x64和MacOS x64版本可供下载。对于其他平台,您可能需要自行编译。MacOS ARM64构建不可用的原因是它需要ARM Python Dev Libs,我在GitHub的MacOS x64 VM上没有找到它。此外,我没有Mac。

更新:它已上传到PyPI,现在您可以使用pip进行安装。

安装

pip install realcugan-ncnn-vulkan-python

构建

首先,您必须在您的平台上安装python、python开发包(Visual Studio中的Python原生开发库)、vulkan SDK和SWIG。然后,有两种方法可以构建它

  • 使用setuptools构建并直接安装到Python包中。(目前处于开发中)
  • 直接使用CMake(旧方法)

使用setuptools

python setup.py install

使用CMake

Linux

  1. 安装依赖项:cmake、vulkan sdk、swig和python-dev

Debian、Ubuntu和其他类似Debian的发行版

apt-get install cmake libvulkan-dev swig python3-dev

Arch发行版

pacman -S base-devel cmake vulkan-headers vulkan-icd-loader swig python
  1. 使用CMake构建
git clone https://github.com/ArchieMeng/realcugan-ncnn-vulkan-python.git
cd realcugan-ncnn-vulkan-python
git submodule update --init --recursive
cd src
cmake -B build .
cd build
make

Windows

我使用Visual Studio 2019和msvc v142为Windows构建了这个项目。

安装visual studio,打开项目目录,并构建。任务完成。

Windows上唯一的问题是,你不能使用CMake for Windows GUI生成Visual Studio解决方案文件并进行构建。这将导致库在加载时崩溃。

一种方法是在使用Visual Studio以目录方式打开项目,并在Visual Studio中构建它。另一种方法是像在release.yml中写的那样在powershell中构建它

Mac OS X

  1. 安装依赖项:cmake、vulkan sdk、swig和python-dev
brew install swig
  • 我想python dev在Mac上是现成的。如果不是,请在谷歌上搜索。
  1. 使用CMake构建
  • 你可以传递-DUSE_STATIC_MOLTENVK=ON选项以避免在MacOS上链接vulkan加载器库
git clone https://github.com/ArchieMeng/realcugan-ncnn-vulkan-python.git
cd realcugan-ncnn-vulkan-python
git submodule update --init --recursive
cd src
cmake -B build .
cd build
make

用法

示例程序

from PIL import Image
from realcugan_ncnn_vulkan import RealCUGAN

with Image.open("input.png") as image:
  realcugan = RealCUGAN(gpuid=0, scale=2, noise=3)
  image = realcugan.process(image)
  image.save("output.png")

文档

已知问题

Original realcugan Project

其他开源代码

由以下机构支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误日志 StatusPage StatusPage 状态页面