Deepstory adalah karya seni yang menggabungkan Natural Language Generation (NLG) dengan GPT-2, Text-to-Speech (TTS) dengan Deep Convolutional TTS, animasi ucapan ke animasi dengan animasi yang digerakkan oleh ucapan, dan animasi gambar dengan Model Gerak Orde Pertama ke dalam sebuah aplikasi media.
Sederhananya, ini mengubah teks/teks yang dihasilkan menjadi video di mana karakter dianimasikan untuk menyampaikan cerita Anda menggunakan suaranya.
Anda dapat mengubah gambar menjadi video seperti ini:
Ini menyediakan antarmuka web yang nyaman dan backend yang ditulis dengan labu untuk membuat cerita Anda sendiri.
Ini mendukung model transformator, dan model pytorch-dctts
Colab (flask-ngrok): https://colab.research.google.com/drive/1HYCPUmFw5rN8kvZdwzFpfBlaUMWPNHas?usp=sharing
Video (Jika Anda memerlukan instruksi): https://blog.thetobysiu.com/video/
Versi Colab akan segera tersedia!
Deepstory
├── animator.py
├── app.py
├── data
│ ├── dctts
│ │ ├── Geralt
│ │ │ ├── ssrn.pth
│ │ │ └── t2m.pth
│ │ ├── LJ
│ │ │ ├── ssrn.pth
│ │ │ └── t2m.pth
│ │ └── Yennefer
│ │ ├── ssrn.pth
│ │ └── t2m.pth
│ ├── fom
│ │ ├── vox-256.yaml
│ │ ├── vox-adv-256.yaml
│ │ ├── vox-adv-cpk.pth.tar
│ │ └── vox-cpk.pth.tar
│ ├── gpt2
│ │ ├── Waiting for Godot
│ │ │ ├── config.json
│ │ │ ├── default.txt
│ │ │ ├── merges.txt
│ │ │ ├── pytorch_model.bin
│ │ │ ├── special_tokens_map.json
│ │ │ ├── text.txt
│ │ │ ├── tokenizer_config.json
│ │ │ └── vocab.json
│ │ └── Witcher Books
│ │ ├── config.json
│ │ ├── default.txt
│ │ ├── merges.txt
│ │ ├── pytorch_model.bin
│ │ ├── special_tokens_map.json
│ │ ├── text.txt
│ │ ├── tokenizer_config.json
│ │ └── vocab.json
│ ├── images
│ │ ├── Geralt
│ │ │ ├── 0.jpg
│ │ │ └── fx.jpg
│ │ └── Yennefer
│ │ ├── 0.jpg
│ │ ├── 1.jpg
│ │ ├── 2.jpg
│ │ ├── 3.jpg
│ │ ├── 4.jpg
│ │ └── 5.jpg
│ └── sda
│ ├── grid.dat
│ └── image.bmp
├── deepstory.py
├── generate.py
├── modules
│ ├── dctts
│ │ ├── audio.py
│ │ ├── hparams.py
│ │ ├── __init__.py
│ │ ├── layers.py
│ │ ├── ssrn.py
│ │ └── text2mel.py
│ ├── fom
│ │ ├── animate.py
│ │ ├── dense_motion.py
│ │ ├── generator.py
│ │ ├── __init__.py
│ │ ├── keypoint_detector.py
│ │ ├── sync_batchnorm
│ │ │ ├── batchnorm.py
│ │ │ ├── comm.py
│ │ │ ├── __init__.py
│ │ │ └── replicate.py
│ │ └── util.py
│ └── sda
│ ├── encoder_audio.py
│ ├── encoder_image.py
│ ├── img_generator.py
│ ├── __init__.py
│ ├── rnn_audio.py
│ ├── sda.py
│ └── utils.py
├── README.md
├── requirements.txt
├── static
│ ├── bootstrap
│ │ ├── css
│ │ │ └── bootstrap.min.css
│ │ └── js
│ │ └── bootstrap.min.js
│ ├── css
│ │ └── styles.css
│ └── js
│ └── jquery.min.js
├── templates
│ ├── animate.html
│ ├── deepstory.js
│ ├── gen_sentences.html
│ ├── gpt2.html
│ ├── index.html
│ ├── map.html
│ ├── models.html
│ ├── sentences.html
│ ├── status.html
│ └── video.html
├── test.py
├── text.txt
├── util.py
└── voice.py
Mereka tersedia di versi Google Drive dari proyek ini. Semua model (termasuk Geralt, Yennefer) disertakan.
Anda harus mendownload model spacy english terlebih dahulu.
pastikan Anda telah menginstal ffmpeg di komputer Anda, dan ffmpeg-python diinstal.
https://drive.google.com/drive/folders/1AxORLF-QFd2wSORzMOKlvCQSFhdZSODJ?usp=sharing
Untuk mempermudah, versi google colab akan segera dirilis...
Diperlukan GPU nvidia dengan VRAM minimal 4GB untuk menjalankan proyek ini
https://github.com/tugstugi/pytorch-dc-tts
https://github.com/DinoMan/speech-driven-animation
https://github.com/AliaksandrSiarohin/first-order-model
https://github.com/huggingface/transformers
Keseluruhan proyek menggunakan PyTorch, sementara tensorflow tercantum di persyaratan.txt, ini digunakan oleh transformator untuk mengonversi model yang dilatih dari gpt-2-simple menjadi model Pytorch.
Hanya file di dalam folder modul yang sedikit dimodifikasi dari aslinya. File-file yang tersisa semuanya ditulis oleh saya, kecuali beberapa bagian yang direferensikan.
Masih ada beberapa masalah memori jika Anda mensintesis kalimat dalam satu sesi berulang kali, namun dibutuhkan setidaknya 10 kali untuk menyebabkan memori meluap.
Ada repositori alat lain yang saya buat untuk memproses file terlebih dahulu. Mereka dapat ditemukan di profil saya.