คุณสามารถใช้เว็บไซต์นี้เพื่อตกแต่งภาพด้วยวิธีการถ่ายโอน neural style หลายวิธี
โครงการนี้ดำเนินการใน Keras 2.1.3 เป็นหลัก (บางส่วนคือ Tensorflow)
วิดีโอสาธิต
neural style ที่รวดเร็ว
สไตล์ประสาท " style="max-width: 100%;">
สลับสไตล์
สไตล์หน้ากาก
neural style ที่รวดเร็ว
การใช้ neural style อย่างรวดเร็วนั้นมีพื้นฐานมาจาก keras สไตล์ประสาทเร็วโดย misgod เราได้ทำการเปลี่ยนแปลงบางอย่าง และวิธีนี้ขึ้นอยู่กับการสูญเสียการรับรู้สำหรับการถ่ายโอนสไตล์แบบเรียลไทม์และความละเอียดขั้นสูงโดย Johnson และคณะ
ในเวอร์ชันปัจจุบัน เราจะแทนที่เลเยอร์ Conv2D บางส่วนเป็นการบิดเบี้ยวแบบแยกส่วนเชิงลึกใน Net การแปลงรูปภาพ รายละเอียดขั้นตอนการฝึกอบรมจะถูกเพิ่มเร็วๆ นี้
สลับสไตล์
เลเยอร์สลับสไตล์อ้างอิงมาจาก WCT-TF โดย eridgd เอกสารต้นฉบับคือ Fast Patch-based Style Transfer of Arbitrary Style โดย Chen และคณะ
สไตล์หน้ากาก
เราใช้ Mask R-CNN ซึ่งดำเนินการโดย Matterport เอกสารต้นฉบับของ Mask R-CNN คือ Mask R-CNN โดย He และคณะ
Python >= 3.5 (อนาคอนดา)
CUDA >=8.0 (สำหรับการรองรับ GPU การใช้เวอร์ชันที่ใหม่กว่าจะต้องตรวจสอบความเข้ากันได้กับเวอร์ชัน tensorflow-gpu)
Cudnn >=6.0 (สำหรับการรองรับ GPU)
ขวด 0.12.2
เครา 2.1.3
เทนเซอร์โฟลว์-gpu 1.4
เผ็ดร้อน 1.0.0
scikit-รูปภาพ
พิโคโคทูล
imgaug
พิล
ไซทอน
คุณต้องมีคุณสมบัติตรงตามข้อกำหนดของ Mask R-CNN ด้วย
ดาวน์โหลดโมเดลที่ฝึกไว้ล่วงหน้าที่กลั่นแล้ว และแตกไฟล์โมเดลลงใน models/fast_style_transfer/pretrained
จากนั้นแก้ไข MODELS_PATH ใน models/file_path.py
และใช้คอนโซลย้ายไปยังโฟลเดอร์โปรเจ็กต์รูทและพิมพ์
python app.py
และเปิดเบราว์เซอร์ไปที่ localhost:5000
คุณต้องดาวน์โหลดชุดข้อมูล COCO ก่อน เราใช้ชุดการฝึกอบรมปี 2014 (ภาพ 83K)
neural style ที่รวดเร็วดั้งเดิม
คุณต้องกรอกสตริงพาธในฟังก์ชัน loss_net
ใน models/src/nets.py
ไปยังโมเดล vgg16 ที่ได้รับการฝึกล่วงหน้าของคุณ โปรดทราบว่าอิมเมจการฝึกของคุณควรใส่ไว้ในโฟลเดอร์เช่นนี้ cocotrain/0/xxx.jpg
เนื่องจากเราใช้ ImageDataGenerator เพื่อโหลดรูปภาพ โดยถือว่าคลาสของรูปภาพที่แตกต่างกันถูกจัดเก็บไว้ในโฟลเดอร์ที่แตกต่างกัน
เตรียมรูปภาพสไตล์และวางไว้ใน static/img/styles/
พิมพ์คำสั่งด้านล่างเพื่อฝึกโมเดล นี่คือตัวอย่างที่แสดงว่าหากอิมเมจการฝึกของฉันถูกจัดเก็บไว้ที่โฟลเดอร์รูทของโปรเจ็กต์ และบอกว่าฉันต้องการฝึกสไตล์ที่ชื่อโมเสก
python train_fast_model.py -p ./cocotrain -s mosaic
คุณยังสามารถปรับแต่งน้ำหนักของเนื้อหาและสไตล์ พิมพ์ -h เพื่อดูข้อโต้แย้งทั้งหมด
python train_fast_model.py -h
neural style อย่างรวดเร็วกลั่น
คุณต้องมีโมเดลที่ได้รับการอบรม neural style แบบเร็ว ดั้งเดิม นี่คือลิงก์โมเดลที่ได้รับการฝึกล่วงหน้าแบบดั้งเดิม
เรียกใช้ generate_image.py
คุณต้องระบุเส้นทางชุดข้อมูล COCO โดยใช้ -p
python generate_image.py -p ./cocotrain
train_distillated_model.py
จำเป็นต้องมีเส้นทางไปยังเส้นทางชุดข้อมูล COCO และชื่อสไตล์ ด้านล่างเป็นตัวอย่าง python train_distillated_model.py -p ./cocotrain -s mosaic
โมเดลสลับสไตล์
คุณไม่เพียงต้องการชุดข้อมูล COCO เท่านั้น แต่ยังต้องมีรูปภาพสไตล์จำนวนมากอีกด้วย เช่นเดียวกับกระดาษ เราใช้ Painter by Numbers โปรดทราบว่ารูปภาพการฝึกและรูปภาพสไตล์ของคุณควรอยู่ในโฟลเดอร์ เช่น cocotrain/0/xxx.jpg
และ styleimages/0/xxx.jpg
train_style_swap_model.py
จำเป็นต้องมีเส้นทางไปยังเส้นทางชุดข้อมูล COCO และรูปภาพสไตล์ ด้านล่างเป็นตัวอย่าง python train_style_swap_model.py -p ./cocotrain -s ./styleimages