Anda dapat menggunakan situs web ini untuk mengatur gaya gambar dengan beberapa metode transfer neural style .
Proyek ini diimplementasikan terutama di Keras 2.1.3 (sebagian adalah Tensorflow)
Video Demo
neural style cepat
gaya saraf " style="max-width: 100%;">
Pertukaran Gaya
Gaya Topeng
neural style cepat
Implementasi neural style cepat didasarkan pada fast-neural-style-keras oleh misgod, Kami membuat beberapa perubahan padanya, dan metode ini didasarkan pada Kerugian Perseptual untuk Transfer Gaya Real-Time dan Resolusi Super oleh Johnson et al.
Dalam versi saat ini, Kami mengganti beberapa lapisan Conv2D menjadi konvolusi yang dapat dipisahkan secara mendalam di jaringan transformasi gambar. detail prosedur pelatihan akan segera ditambahkan.
Pertukaran Gaya
Lapisan style swap adalah referensi dari WCT-TF oleh eridgd, makalah aslinya adalah Fast Patch-based Style Transfer of Arbitrary Style oleh Chen et al.
Gaya Topeng
Kami menggunakan Mask R-CNN yang diimplementasikan oleh matterport, makalah asli dari Mask R-CNN adalah Mask R-CNN oleh He et al.
Python >= 3.5 (Anaconda)
CUDA >=8.0 (Untuk dukungan GPU, menggunakan versi yang lebih baru perlu memeriksa kompatibilitas dengan versi tensorflow-gpu)
Cudnn >=6.0 (Untuk dukungan GPU)
Labu 0.12.2
Keras 2.1.3
tensorflow-gpu 1.4
scipy 1.0.0
gambar scikit
alat pycoco
gambar
pil
siton
Anda juga harus memenuhi persyaratan Mask R-CNN.
Unduh model pra-pelatihan yang distilasi, dan unzip model ke dalam models/fast_style_transfer/pretrained
, lalu modifikasi MODELS_PATH di models/file_path.py
, dan gunakan konsol pindah ke folder proyek akar dan ketik
python app.py
dan buka browser, buka localhost:5000
Anda harus mendownload dataset COCO terlebih dahulu, kami menggunakan set pelatihan tahun 2014 (83 ribu gambar).
neural style cepat Asli
Anda perlu mengisi string jalur dalam fungsi loss_net
di models/src/nets.py
ke model vgg16 Anda yang telah dilatih sebelumnya. Perhatikan bahwa gambar pelatihan Anda harus dimasukkan ke dalam folder seperti ini cocotrain/0/xxx.jpg
karena kami menggunakan ImageDataGenerator untuk memuat gambar, ini mengasumsikan bahwa kelas gambar yang berbeda disimpan di folder yang berbeda.
Siapkan gambar gaya dan letakkan di static/img/styles/
.
Ketik perintah di bawah ini untuk melatih model. Ini adalah contoh yang menunjukkan jika gambar pelatihan saya disimpan di folder root proyek, dan mengatakan saya ingin melatih gaya bernama mosaik.
python train_fast_model.py -p ./cocotrain -s mosaic
Anda juga dapat menyesuaikan bobot content dan style , ketik -h untuk melihat semua argumen.
python train_fast_model.py -h
neural style cepat Distilasi
Anda harus memiliki model terlatih neural style cepat asli, berikut ini tautan model terlatih asli.
Jalankan generate_image.py
, Anda juga perlu menentukan jalur dataset COCO menggunakan -p
.
python generate_image.py -p ./cocotrain
train_distillated_model.py
, jalur ke jalur kumpulan data COCO dan nama gaya diperlukan. Di bawah ini adalah contohnya. python train_distillated_model.py -p ./cocotrain -s mosaic
Model Pertukaran Gaya
Anda tidak hanya memerlukan kumpulan data COCO, tetapi juga banyak gambar gaya. Sama seperti kertas, kami menggunakan Painter by Numbers. Perhatikan bahwa gambar pelatihan dan gambar gaya Anda harus dimasukkan ke dalam folder seperti cocotrain/0/xxx.jpg
dan styleimages/0/xxx.jpg
.
train_style_swap_model.py
, jalur ke jalur kumpulan data COCO dan gambar gaya diperlukan. Di bawah ini adalah contohnya. python train_style_swap_model.py -p ./cocotrain -s ./styleimages