SwinIR

Jaringan Swin Transformer untuk restorasi gambar. LibreYOLO menyediakan inferensi dan validasi untuk checkpoint super-resolution 4x: generator lightweight resmi, real-world medium, dan real-world large.

Task
restore
Ukuran
s, m, l at 64 px
Instalasi
pip install libreyolo
Tier dukungan
Hanya inferensi, sejak v. Hanya prediksi, validasi, dan ekspor. Fitur pelatihan tidak berlaku.
Proyek upstream
SwinIR oleh Computer Vision Lab, ETH Zurich, Apache-2.0. Makalah, sumber
Lisensi
Kode Apache-2.0, bobot Apache-2.0. Penggunaan komersial

Instalasi

SwinIR tidak memerlukan komponen tambahan opsional. Semua impornya tersedia dalam instalasi dasar.

bash
pip install libreyolo

Prediksi

Bobot diunduh dari Hugging Face saat pertama kali digunakan dan disimpan dalam cache lokal.

Python
from libreyolo import LibreYOLO, SAMPLE_IMAGE model = LibreYOLO("LibreSwinIRm-restore.pt")result = model(SAMPLE_IMAGE, save=True) restored = result.restoredprint(restored.array.shape, restored.array.dtype)
CLI
libreyolo predict model=LibreSwinIRm-restore.pt source=https://raw.githubusercontent.com/LibreYOLO/libreyolo/release/libreyolo/assets/parkour.jpg save=True
Tile untuk gambar besar
from libreyolo import LibreYOLO model = LibreYOLO("LibreSwinIRl-restore.pt") # tile membagi forward pass menjadi tile yang saling tumpang tindih dan memadukan# sambungannya kembali; tile_pad adalah halo yang ditambahkan di sekitar setiap tile# sebelum dipotong kembali. Keduanya adalah argumen keyword khusus Python,# bukan flag CLI.result = model("large-photo.jpg", tile=512, tile_pad=16, save=True)

Hasil restorasi tidak memiliki kotak; result.restored adalah gambar RGB uint8 padat (H, W, 3) pada canvas 4x input di setiap dimensi. save=True menulis gambar tersebut secara langsung, bukan plot beranotasi. Input diberi padding hingga kelipatan 8, bukan diubah ukurannya, sehingga prediksi berjalan pada resolusi foto sendiri; sumber yang lebih besar daripada kapasitas memori dapat dibagi dengan tile dan tile_pad, yang memadukan kembali sambungan tile dalam output. Lihat prediksi untuk sumber, streaming, dan penanganan hasil.

Varian

Tiga ukuran, semuanya dengan upscale tetap 4x. s adalah generator lightweight resmi, dengan empat tahap residual Swin Transformer block (RSTB) dan upsampling pixel-shuffle-direct. m dan l adalah generator real-world medium dan large, dengan enam dan sembilan tahap RSTB serta upsampler nearest-neighbor-plus-convolution yang dibuat untuk degradasi dunia nyata, bukan hanya downscaling bikubik.

Validasi

val() mengukur PSNR dan SSIM antara output restorasi dan gambar target bersih. Keduanya dihitung dalam RGB pada canvas asli tanpa pemotongan batas dan tanpa pengubahan ukuran. SSIM memakai jendela Gaussian 11x11 dengan sigma 1.5, lalu dirata-ratakan pada ketiga channel warna.

Python
from libreyolo import LibreYOLO model = LibreYOLO("LibreSwinIRm-restore.pt")metrics = model.val(data="my-restore-dataset.yaml") print(metrics["metrics/PSNR"])print(metrics["metrics/SSIM"])
CLI
libreyolo val model=LibreSwinIRm-restore.pt data=my-restore-dataset.yaml

Argumen dataset adalah YAML yang memasangkan direktori gambar input terdegradasi dengan direktori gambar target bersih beresolusi sama; lihat format dataset untuk key yang tepat.

Ekspor

TaskONNXTorchScriptExecuTorchTensorRTOpenVINOPaddleMNNRKNNncnnTFLiteCoreMLCore AI
restorerestore to ONNX: didukungrestore to TorchScript: didukungrestore to ExecuTorch: tidak didukungrestore to TensorRT: didukungrestore to OpenVINO: didukungrestore to Paddle: tidak didukungrestore to MNN: tidak didukungrestore to RKNN: tidak didukungrestore to ncnn: tidak didukungrestore to TFLite: didukungrestore to CoreML: tidak didukungrestore to Core AI: tidak didukung

Artefak hasil ekspor dimuat kembali melalui LibreYOLO() berdasarkan sufiks berkasnya, sehingga berkas .onnx atau .engine berperilaku seperti checkpoint dan mengembalikan Results yang sama. ExecuTorch dan setiap format yang ditandai diblokir dalam matriks tidak tersedia untuk family ini; ONNX, TorchScript, TensorRT, OpenVINO, dan TFLite tersedia. Ekspor mencantumkan argumen yang diterima setiap format beserta komponen tambahan yang disediakan beberapa format.

Python
from libreyolo import LibreYOLO model = LibreYOLO("LibreSwinIRm-restore.pt") # imgsz memakai patch internal kecil secara default jika dihilangkan, bukan# resolusi kerja Anda, jadi berikan ukuran yang benar-benar digunakan deployment# sebagai input model.model.export(format="onnx", imgsz=512)model.export(format="tensorrt", imgsz=512, half=True)
CLI
libreyolo export model=LibreSwinIRm-restore.pt format=onnx imgsz=512
Gunakan berkas hasil ekspor
from libreyolo import LibreYOLO, SAMPLE_IMAGE # Factory merutekan berdasarkan sufiks berkas, sehingga artefak hasil ekspor# dimuat seperti checkpoint lain dan mengembalikan objek Results yang sama.model = LibreYOLO("LibreSwinIRm-restore.onnx")result = model(SAMPLE_IMAGE) print(result.restored.array.shape)

Checkpoint

Setiap berkas bobot yang dipublikasikan untuk family ini.

BerkasInput (piksel)Lisensi bobot
restore
LibreSwinIRs-restore.ptapache-2.0
LibreSwinIRm-restore.ptapache-2.0
LibreSwinIRl-restore.ptapache-2.0

Setiap berkas di atas saat ini tersedia di organisasi LibreYOLO dan diunduh saat pertama kali digunakan.

Lisensi

Periksa lisensi di repositori Hugging Face untuk bobot tertentu yang diunduh. Setiap checkpoint di organisasi LibreYOLO memiliki lisensi, dan lisensinya tidak selalu sama dalam satu family. Repositori tersebut adalah sumber resmi. Ringkasan di bawah menjelaskan ketentuan yang berlaku saat halaman ini terakhir diverifikasi.

Ini adalah deskripsi lisensi yang terlibat, bukan nasihat hukum. Jika jawabannya penting secara komersial, baca sendiri lisensinya dan mintalah nasihat dari penasihat hukum Anda.

Karya asli
SwinIR, Computer Vision Lab, ETH Zurich
Lisensi upstream
Apache-2.0
Kode LibreYOLO
MIT
Bobot
Apache-2.0, dipublikasikan ulang di huggingface.co/LibreYOLO
Interpretasi
Apache-2.0 is a permissive license, so these weights can be used in commercial and closed-source products. It asks you to keep its license text and attribution notices with any copy of the weights you redistribute, and it grants a patent license. It places no obligation on your own application code. LibreYOLO's checkpoints are format conversions of the official pretrained generators, with the learned parameters unchanged; SwinIR's real-world variants need a degradation and GAN training pipeline that is not wired into this library, so there is no LibreYOLO-trained variant to license separately.

Sitasi

@article{liang2021swinir,
  title={SwinIR: Image Restoration Using Swin Transformer},
  author={Liang, Jingyun and Cao, Jiezhang and Sun, Guolei and Zhang, Kai and Van Gool, Luc and Timofte, Radu},
  journal={arXiv preprint arXiv:2108.10257},
  year={2021}
}

Disalin dari blok sitasi penulis di github.com/JingyunLiang/SwinIR#citation.

Diverifikasi dengan LibreYOLO v1.5.0. Tabel dukungan, checkpoint, dan angka benchmark di halaman ini dihasilkan dari library yang telah dirilis dan bobot yang dipublikasikan, bukan ditulis manual.