هذا هو refoctory الرسمي للورقة "توليد Ambigram من خلال نموذج نشر". يتم قبول هذه الورقة في ICDAR 2023.
【 تحديث 】
2023/07/20: Appifusion2 مفتوح. يمكن أن تنشئ هذه الطريقة أجهزة Aggigrams مع أي زوج صورة من خلال تحديد مطالبين كزوج.
TL ؛ د
ambigramability
، وهو مقياس موضوعي لمدى سهولة إنشاء أجهزة aggigrams لكل زوج من الحروف. Ambigrams هي تصميمات رسومية يمكن قراءتها ليس فقط من الاتجاه الأصلي ولكن أيضًا من الاتجاه المتناوب (خاصة مع 180 درجة). يعد تصميم Ambigrams أمرًا صعبًا حتى بالنسبة للخبراء البشريين لأن الحفاظ على قابلية القراءة المزدوجة من كلا الاتجاهين أمر صعب. تقترح هذه الورقة نموذج توليد Ambigram. كوحدة توليدها ، نستخدم نموذج نشر ، والذي تم استخدامه مؤخرًا لإنشاء صور فوتوغرافية عالية الجودة. من خلال تحديد زوج من فئات الحروف ، مثل "A" و "B" ، يولد النموذج المقترح صورًا مختلفة لأجواء يمكن قراءتها على أنها "A" من الاتجاه الأصلي و "B" من اتجاه تم تدويره 180 درجة. تُظهر التحليلات الكمية والنوعية للنتائج التجريبية أن النموذج المقترح يمكن أن يولد أجزاء عالية الجودة ومتنوعة. بالإضافة إلى ذلك ، نقوم بتحديد قابلية الأداء ، وهو مقياس موضوعي لمدى سهولة إنشاء أجهزة aggigrams لكل زوج من الحروف. على سبيل المثال ، يُظهر زوج "A" و "V" قابلاً للشفقة العالية (أي ، من السهل إنشاء أجهزة Aggigrams) ، ويظهر زوج "D" و "K" قابلية منخفضة. يعطي قابلية الأجواء تلميحات مختلفة من جيل Ambigram ليس فقط لأجهزة الكمبيوتر ولكن أيضًا للخبراء البشريين.
طريقتنا المقترحة يولد أجهزة أمثلة مثل الأمثلة التالية.
الرقم الأقواس هو درجة القابلية للأجواء (↑) لزوج الرسالة. الصفوف الثلاثة العليا هي أزواج فئة سهلة إلى حد ما (مع ارتفاع درجات قابلية الغضب) ، والثلاثة السفلى ليسوا كذلك.
اختبرنا جميع الرموز في Python: 3.8.10
. يمكنك تنزيل المكتبات الخارجية مع pip
على النحو التالي.
pip install torch==1.11.0+cu113 torchvision==0.12.0+cu113 torchaudio==0.11.0 --extra-index-url https://download.pytorch.org/whl/cu113
pip install -r requirements.txt
يمكنك أيضًا تنزيل الأوزان التي تم تدريبها مسبقًا. استبدل جميع ملفات Pseud Weights weight_name.txt
بملف الأعماق الحقيقية.
python demo.py
127.0.0.1:11111
مع متصفح الويب الخاص بك. TestConfigs
في ambigram_random_sample.py
. python ambigram_random_sample.py
TestConfigs
في calc_ambigramability.py
. python calc_ambigramability.py
TrainConfigs
في configs/trainargs.py
. إذا كنت تريد ، يمكنك تغيير DA_ambigram_configs.yaml
(تم ذكر التفاصيل في المادة 3.2 في الورقة). ## Run on single gpu
python ambigram_train.py
## Run on multiple gpus
mpiexec -n [NUM_GPUs] python ambigram_train.py
ملاحظة [1]: إذا كنت ترغب في إنشاء أجهزة Ambigrams باستخدام classifier-free guidance
، فيجب عليك تدريب كل من الطراز الشرطي والنموذج غير المشروط بشكل منفصل.
@article{shirakawa2023ambigram,
title={Ambigram Generation by A Diffusion Model},
author={Shirakawa, Takahiro and Uchida, Seiichi},
booktitle={2023 17th international conference on document analysis and recognition (ICDAR)},
year={2023}
}