Projekt | ArXiv | Papier | Huggingface-Demo | Colab-Demo
2024.02 Testen Sie das Modell anhand benutzerdefinierter Handschriftbeispiele:
Eine Huggingface-Demo ist jetzt verfügbar und läuft
Colab-Demo für benutzerdefinierte Handschriften
Colab-Demo für IAM/CVL-Datensatz
Ankan Kumar Bhunia, Salman Khan, Hisham Cholakkal, Rao Muhammad Anwer, Fahad Shahbaz Khan und Mubarak Shah
Zusammenfassung: Wir schlagen einen neuartigen transformatorbasierten Ansatz zur Generierung handschriftlicher Textbilder (HWT) vor, der darauf abzielt, sowohl die Verflechtung von Stil und Inhalt als auch globale und lokale Schreibstilmuster zu lernen. Das vorgeschlagene HWT erfasst die Lang- und Kurzstreckenbeziehungen innerhalb der Stilbeispiele durch einen Selbstaufmerksamkeitsmechanismus und kodiert dadurch sowohl globale als auch lokale Stilmuster. Darüber hinaus umfasst das vorgeschlagene transformatorbasierte HWT eine Encoder-Decoder-Aufmerksamkeit, die eine Stil-Inhalt-Verschränkung ermöglicht, indem die Stildarstellung jedes Abfragezeichens erfasst wird. Nach unserem besten Wissen sind wir die ersten, die ein transformatorbasiertes generatives Netzwerk für die Generierung handgeschriebener Texte mit Stil eingeführt haben. Unser vorgeschlagenes HWT generiert realistisch gestaltete handgeschriebene Textbilder und übertrifft den Stand der Technik, der durch umfangreiche qualitative, quantitative und menschenbasierte Bewertungen demonstriert wurde, deutlich. Das vorgeschlagene HWT kann beliebige Textlängen und jeden gewünschten Schreibstil in einer Einstellung mit wenigen Aufnahmen verarbeiten. Darüber hinaus lässt sich unser HWT gut auf das herausfordernde Szenario verallgemeinern, in dem sowohl Wörter als auch der Schreibstil während des Trainings unsichtbar sind, wodurch realistisch gestaltete handgeschriebene Textbilder entstehen.
Python 3.7
PyTorch >=1.4
Informationen zur Installation der erforderlichen Bibliotheken finden Sie INSTALL.md
. Sie können den Inhalt in der Datei mytext.txt
ändern, um die generierte Handschrift während des Trainings zu visualisieren.
Laden Sie Datensatzdateien und Modelle von https://drive.google.com/file/d/16g9zgysQnWk7-353_tMig92KsZsrcM6k/view?usp=sharing herunter und entpacken Sie sie im files
. Kurz gesagt, führen Sie die folgenden Zeilen in einem Bash-Terminal aus.
Git-Klon https://github.com/ankanbhunia/Handwriting-Transformerscd Handwriting-Transformers pip install --upgrade --no-cache-dir gdown gdown --id 16g9zgysQnWk7-353_tMig92KsZsrcM6k && unzip files.zip && rm files.zip
Um mit dem Training des Modells zu beginnen: Ausführen
python train.py
Wenn Sie wandb
verwenden möchten, installieren Sie es bitte und ändern Sie Ihren auth_key in der train.py
Datei (ln:4).
Sie können verschiedene Parameter in der Datei params.py
ändern.
Sie können das Modell in jedem benutzerdefinierten Datensatz außer IAM und CVL trainieren. Der Prozess umfasst das Erstellen einer Datei dataset_name.pickle
und deren Ablegen im files
. Die Struktur von dataset_name.pickle
ist ein einfaches Python-Wörterbuch.
{'train': [{writer_1:[{'img': <PIL.IMAGE>, 'label':<str_label>},...]}, {writer_2:[{'img': <PIL.IMAGE> , 'label':<str_label>},...]},...], 'test': [{writer_3:[{'img': <PIL.IMAGE>, 'label':<str_label>},...]}, {writer_4:[{'img': <PIL.IMAGE>, 'label':<str_label>},...]},...], }
docker run -it -p 7860:7860 --platform=linux/amd64 registry.hf.space/ankankbhunia-hwt:latest python app.py
Bitte überprüfen Sie den results
im Repository, um weitere qualitative Analysen zu sehen. Schauen Sie sich auch die Colab-Demo an, um Ihren eigenen benutzerdefinierten Text und Schreibstil auszuprobieren
Rekonstruktionsergebnisse mit dem vorgeschlagenen HWT im Vergleich zu GANwriting und Davis et al. Wir verwenden den gleichen Text wie in den Stilbeispielen, um handgeschriebene Bilder zu erstellen.
Wenn Sie den Code für Ihre Recherche verwenden, zitieren Sie bitte unseren Artikel:
@InProceedings{Bhunia_2021_ICCV, author = {Bhunia, Ankan Kumar and Khan, Salman and Cholakkal, Hisham and Anwer, Rao Muhammad and Khan, Fahad Shahbaz and Shah, Mubarak}, title = {Handwriting Transformers}, booktitle = {Proceedings of the IEEE/CVF International Conference on Computer Vision (ICCV)}, month = {October}, year = {2021}, pages = {1086-1094} }