TL;DR : Blur2Blur konvertiert Bilder von unbekannter Unschärfe in eine bekannte Unschärfe. Diese Version behält den ursprünglichen Inhalt bei, wendet jedoch einen anderen Unschärfekern an, der durch Überwachungs-Entunschärfemodelle effektiv trainiert und erfasst wurde.
Zusammenfassung : In diesem Artikel wird ein innovatives Framework vorgestellt, mit dem ein Algorithmus zur Bildunschärfe trainiert werden kann, der auf ein bestimmtes Kameragerät zugeschnitten ist. Dieser Algorithmus funktioniert, indem er ein verschwommenes Eingabebild, das schwierig zu entschärfen ist, in ein anderes verschwommenes Bild umwandelt, das sich besser für die Entunschärfe eignet. Der Transformationsprozess von einem verschwommenen Zustand in einen anderen nutzt ungepaarte Daten, die aus scharfen und verschwommenen Bildern bestehen, die vom Zielkameragerät aufgenommen wurden. Das Erlernen dieser Unschärfe-zu-Unschärfe-Transformation ist von Natur aus einfacher als die direkte Unschärfe-zu-Scharf-Konvertierung, da es in erster Linie um die Änderung von Unschärfemustern geht und nicht um die komplizierte Aufgabe, feine Bilddetails zu rekonstruieren. Die Wirksamkeit des vorgeschlagenen Ansatzes wurde durch umfassende Experimente an verschiedenen Benchmarks nachgewiesen, bei denen er modernste Methoden sowohl quantitativ als auch qualitativ deutlich übertrifft.
Details zur Modellarchitektur und experimentellen Ergebnissen finden Sie in unserem Artikel:
@inproceedings { pham2024blur2blur ,
author = { Pham, Bang-Dang and Tran, Phong and Tran, Anh and Pham, Cuong and Nguyen, Rang and Hoai, Minh } ,
booktitle = { Proceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition (CVPR) } ,
title = { Blur2Blur: Blur Conversion for Unsupervised Image Deblurring on Unknown Domains } ,
year = { 2024 }
}
Bitte zitieren Sie unser Papier, wenn dieses Repository zur Erstellung veröffentlichter Ergebnisse verwendet oder in andere Software integriert wird.
Abhängigkeiten installieren:
git clone https://github.com/VinAIResearch/Blur2Blur
cd Blur2Blur
conda create -n blur2blur python=3.9
conda activate blur2blur
pip install -r requirements.txt
Sie können unseren vorgeschlagenen RB2V-Datensatz herunterladen, indem Sie diesem Skript folgen:
chmod +x ./dataset/download_RB2V.sh
bash ./dataset/download_RB2V.sh
Laden Sie die Datensätze REDS, GoPro und RSBlur herunter, entpacken Sie sie dann in den Ordner ./dataset
und organisieren Sie sie in folgendem Format:
Datensatz ├── Name des unbekannt-bekannten Datensatzes, z. B. RB2V-GoPro ├── trainA ├──── (Zug) Verschwommenes Set von Unknown Blur ├──── ... ├── trainB ├──── (Zug) Scharfer Satz unbekannter Unschärfe ├──── ... ├── trainC ├──── (Zug) Verschwommener Satz bekannter Unschärfe ├──── ... ├── trainD ├──── (Zug) Scharfer Satz bekannter Unschärfe ├──── ... ├── testA ├──── (Test) Verschwommener Satz von Unknown Blur ├──── ...
Wo:
test-set
des Datensatzes „Unbekannte Unschärfe“. So trainieren Sie das Modell:
python train.py --dataroot path/to/dataset
--name exp_name
--model blur2blur --netG mimounet
--batch_size 1
--dataset_mode unaligned
--norm instance --pool_size 0
--display_id -1
oder
bash ./scripts/train.sh
So bewerten Sie das Modell:
python test.py --dataroot datasets/GoPro/b2b_exp/RB2V_GOPRO_filter
--name exp_name
--eval
--model blur2blur --netG mimounet
--checkpoints_dir ckpts/
--dataset_mode unaligned
--norm instance
oder
bash ./scripts/test.sh
Weitere interaktive Ergebnisse finden Sie auf meiner Projektseite: https://zero1778.github.io/blur2blur/
Wir möchten den folgenden Implementierungen unseren Dank für ihre Beiträge zur Entwicklung von Blur2Blur aussprechen:
Wenn Sie Fragen oder Anregungen zu diesem Repo haben, können Sie mich gerne kontaktieren ([email protected]).