| license: gpl-3.0 | |
| library_name: transformers.js | |
| tags: | |
| - apisr | |
| - super-resolution | |
| pipeline_tag: image-to-image | |
| https://github.com/Kiteretsu77/APISR with ONNX weights to be compatible with Transformers.js. | |
| ## Usage (Transformers.js) | |
| If you haven't already, you can install the [Transformers.js](https://huggingface.co/docs/transformers.js) JavaScript library from [NPM](https://www.npmjs.com/package/@huggingface/transformers) using: | |
| ```bash | |
| npm i @huggingface/transformers | |
| ``` | |
| **Example:** Upscale an image with `Xenova/4x_APISR_GRL_GAN_generator-onnx`. | |
| ```js | |
| import { pipeline } from '@huggingface/transformers'; | |
| // Create image-to-image pipeline | |
| const upscaler = await pipeline('image-to-image', 'Xenova/4x_APISR_GRL_GAN_generator-onnx', { | |
| dtype: "fp32", | |
| }); | |
| // Upscale an image | |
| const url = 'https://huggingface.co/datasets/Xenova/transformers.js-docs/resolve/main/anime.png'; | |
| const output = await upscaler(url); | |
| // RawImage { | |
| // data: Uint8Array(16588800) [ ... ], | |
| // width: 2560, | |
| // height: 1920, | |
| // channels: 3 | |
| // } | |
| // (Optional) Save the upscaled image | |
| output.save('upscaled.png'); | |
| ``` | |
| <details> | |
| <summary>See example output</summary> | |
| Input image: | |
|  | |
| Output image: | |
|  | |
| </details> | |
|  | |
| --- | |
| Note: Having a separate repo for ONNX weights is intended to be a temporary solution until WebML gains more traction. If you would like to make your models web-ready, we recommend converting to ONNX using [🤗 Optimum](https://huggingface.co/docs/optimum/index) and structuring your repo like this one (with ONNX weights located in a subfolder named `onnx`). |