واجهة برمجة تطبيقات Python مفتوحة المصدر للصور
دقة فائقة للصور باستخدام التعلم العميق
ما هو التحسين العصبي؟
Neural Enhance هي واجهة برمجة تطبيقات Python مفتوحة المصدر لتحسين الصورة. تعمل واجهة برمجة التطبيقات على تحسين الصورة باستخدام التعلم العميق ، باستخدام واجهة برمجة التطبيقات ، من الممكن تدريب الشبكة العصبية والتكبير 2x أو حتى 4x في صورك. يمكنك تحسين الصور عن طريق زيادة عدد الخلايا العصبية في الصورة ، باستخدام مجموعة بيانات مشابهة لصورتك منخفضة الدقة.
يمكنك تحسين صورك باستخدام كل من عرض وحدة المعالجة المركزية ووحدة معالجة الرسومات HQ. يجب أن يستغرق إنشاء إخراج 1080 بكسل على وحدة معالجة الرسومات حوالي 5 ثوانٍ أو ثانيتين لكل صورة ويجب أن يستغرق عرض وحدة المعالجة المركزية HQ حوالي 20-60 ثانية لإخراج 1080.
الابتداء مع التحسين العصبي
الطريقة الموصى بها لتثبيت Neural Enhance هي عبر Docker. الرجاء استخدام الأمر التالي لتثبيت Neural Enhance.
قم بتثبيت Neural Enhance عبر Docker
docker run --rm -v `pwd`:/ne/input -it alexjc/neural-enhance --help
تحسين الصور عبر واجهة برمجة تطبيقات Python المجانية
يسمح Neural-Enhance API بتحسين الصور برمجيًا. توفر واجهة برمجة التطبيقات قائمة بالأوامر التي يمكنك استخدامها مع النموذج المدرب مسبقًا والمتوفر في واجهة برمجة التطبيقات. باستخدام API ، يمكنك تشغيل البرنامج النصي فائق الدقة لإصلاح عيوب JPEG ، وعوامل التكبير ، ومعالجة صور متعددة الجودة مع تشغيل واحد ، وعرض الصور الناتجة. يمكنك بسهولة تحسين صورك باستخدام هذا السطر من التعليمات البرمجية
تحسين الصور عبر بايثون
- افتح موجه الأوامر
- انتقل إلى دليل Improvement.py
- قم بتشغيل الأمر التالي وقم بتمرير نوع الملف والإصلاح وخيار التكبير ومسار الصورة المطلوب تحسينه
تحسين الصور عبر بايثون
# Run the super-resolution script to repair JPEG artefacts, zoom factor 1:1.
python3 enhance.py --type=photo --model=repair --zoom=1 broken.jpg
# Process multiple good quality images with a single run, zoom factor 2:1.
python3 enhance.py --type=photo --zoom=2 file1.jpg file2.jpg
# Display output images that were given `_ne?x.png` suffix.
open *_ne?x.png
تدريب الصور فائقة الدقة عبر بايثون
مكتبة الصور مفتوحة المصدر Neural Enhance تقوم بتدريب صورك على طريقتك الخاصة. تأتي واجهة برمجة التطبيقات مع نماذج افتراضية مُدربة مسبقًا ، يمكنك تدريب العملية الخاصة بك باستخدام معلمات تستند إلى مجموعة بيانات الصور الخاصة بك. يمكنك تدريب نموذجك باستخدام الفقد الإدراكي من الورق ، وتدريب نموذجك باستخدام إعداد عدائي ، والمزيد.
استخدم النماذج المدربة مسبقًا والتدريب الفائق الدقة عبر Python API
# Pre-train the model using perceptual loss from paper [1] below.
python3.4 enhance.py --train "data/*.jpg" --model custom --scales=2 --epochs=50 \
--perceptual-layer=conv2_2 --smoothness-weight=1e7 --adversary-weight=0.0 \
--generator-blocks=4 --generator-filters=64
# Train the model using an adversarial setup based on [4] below.
python3.4 enhance.py --train "data/*.jpg" --model custom --scales=2 --epochs=250 \
--perceptual-layer=conv5_2 --smoothness-weight=2e4 --adversary-weight=1e3 \
--generator-start=5 --discriminator-start=0 --adversarial-start=5 \
--discriminator-size=64
# The newly trained model is output into this file...
ls ne?x-custom-*.pkl.bz2