Panduan pembuatan gambar

Tugas Pembuat Gambar MediaPipe memungkinkan Anda membuat gambar berdasarkan perintah teks. Tugas ini menggunakan model teks-ke-gambar untuk menghasilkan gambar menggunakan teknik difusi.

Tugas ini menerima perintah teks sebagai input, bersama dengan gambar kondisi opsional yang dapat ditambah dan digunakan model sebagai referensi untuk pembuatan. Untuk informasi selengkapnya tentang pembuatan teks-ke-gambar yang dikondisikan, lihat Plugin difusi di perangkat untuk pembuatan teks ke gambar yang dikondisikan.

Generator Gambar juga dapat menghasilkan gambar berdasarkan konsep tertentu yang diberikan kepada model selama pelatihan atau pelatihan ulang. Untuk mengetahui informasi selengkapnya, lihat menyesuaikan dengan LoRA.

Mulai

Mulai gunakan tugas ini dengan mengikuti salah satu panduan penerapan ini untuk platform target Anda. Panduan khusus platform ini akan memandu Anda dalam menerapkan dasar tugas ini, dengan contoh kode yang menggunakan model default dan opsi konfigurasi yang direkomendasikan:

Detail tugas

Bagian ini menjelaskan kemampuan, input, output, dan opsi konfigurasi tugas ini.

Fitur

Anda dapat menggunakan Generator Gambar untuk menerapkan hal berikut:

  1. Pembuatan teks ke gambar - Membuat gambar dengan perintah teks.
  2. Pembuatan gambar dengan gambar kondisi - Buat gambar dengan perintah teks dan gambar referensi. Generator Gambar menggunakan gambar kondisi dengan cara yang mirip dengan ControlNet.
  3. Pembuatan gambar dengan bobot LoRA - Buat gambar orang, objek, dan gaya tertentu dengan perintah teks menggunakan bobot model yang disesuaikan.
Input tugas Output tugas
Generator Gambar menerima input berikut:
  • Perintah teks
  • Pendanaan awal
  • Jumlah iterasi generatif
  • Opsional: gambar kondisi
Generator Gambar menampilkan hasil berikut:
  • Gambar yang dihasilkan berdasarkan input.
  • Opsional: Snapshot iteratif dari gambar yang dihasilkan.

Opsi konfigurasi

Tugas ini memiliki opsi konfigurasi berikut:

Nama Opsi Deskripsi Rentang Nilai
imageGeneratorModelDirectory Direktori model generator gambar yang menyimpan bobot model. PATH
loraWeightsFilePath Menetapkan jalur ke file bobot LoRA. Opsional dan hanya berlaku jika model disesuaikan dengan LoRA. PATH
errorListener Menetapkan pemroses error opsional. N/A

Tugas ini juga mendukung model plugin, yang memungkinkan pengguna menyertakan gambar kondisi dalam input tugas, yang dapat ditambah dan digunakan oleh model dasar sebagai referensi untuk pembuatan. Gambar kondisi ini dapat berupa penanda wajah, garis batas tepi, dan estimasi kedalaman, yang digunakan model sebagai konteks dan informasi tambahan untuk membuat gambar.

Saat menambahkan model plugin ke model dasar, konfigurasikan juga opsi plugin. Plugin tolok ukur wajah menggunakan faceConditionOptions, plugin Canny edge menggunakan edgeConditionOptions, dan plugin Depth menggunakan depthConditionOptions.

Opsi canny edge

Konfigurasikan opsi berikut di edgeConditionOptions.

Nama Opsi Deskripsi Rentang Nilai Nilai Default
threshold1 Ambang batas pertama untuk prosedur Histeresis. Float 100
threshold2 Ambang batas kedua untuk prosedur hiperesis. Float 200
apertureSize Ukuran bukaan untuk operator Sobel. Rentang biasanya antara 3-7. Integer 3
l2Gradient Apakah norma L2 digunakan untuk menghitung besaran gradien gambar, bukan norma L1 default. BOOLEAN False
EdgePluginModelBaseOptions Objek BaseOptions yang menetapkan jalur untuk model plugin. Objek BaseOptions N/A

Untuk informasi lebih lanjut tentang cara kerja opsi konfigurasi ini, lihat Pendeteksi tepi Canny.

Opsi tempat terkenal wajah

Konfigurasikan opsi berikut di faceConditionOptions.

Nama Opsi Deskripsi Rentang Nilai Nilai Default
minFaceDetectionConfidence Skor keyakinan minimum untuk deteksi wajah agar dianggap berhasil. Float [0.0,1.0] 0.5
minFacePresenceConfidence Skor keyakinan minimum skor kehadiran wajah dalam deteksi struktur wajah. Float [0.0,1.0] 0.5
faceModelBaseOptions Objek BaseOptions yang menetapkan jalur untuk model yang membuat gambar kondisi. Objek BaseOptions N/A
FacePluginModelBaseOptions Objek BaseOptions yang menetapkan jalur untuk model plugin. Objek BaseOptions N/A

Untuk mengetahui informasi selengkapnya tentang cara kerja opsi konfigurasi ini, lihat tugas Penanda Wajah.

Opsi kedalaman

Konfigurasikan opsi berikut di depthConditionOptions.

Nama Opsi Deskripsi Rentang Nilai Nilai Default
depthModelBaseOptions Objek BaseOptions yang menetapkan jalur untuk model yang membuat gambar kondisi. Objek BaseOptions N/A
depthPluginModelBaseOptions Objek BaseOptions yang menetapkan jalur untuk model plugin. Objek BaseOptions N/A

Model

Generator Gambar memerlukan model dasar, yang merupakan model AI teks ke gambar yang menggunakan teknik difusi untuk menghasilkan gambar baru. Model dasar yang tercantum dalam bagian ini adalah model ringan yang dioptimalkan untuk berjalan di smartphone kelas atas.

Model plugin bersifat opsional dan melengkapi model dasar, sehingga memungkinkan pengguna memberikan gambar kondisi tambahan bersama dengan prompt teks, untuk pembuatan gambar yang lebih spesifik. Menyesuaikan model dasar menggunakan bobot LoRA adalah opsi yang mengajarkan model dasar tentang konsep tertentu, seperti objek, orang, atau gaya, dan memasukkannya ke gambar yang dihasilkan.

Foundation models

Model dasar adalah model difusi teks-ke-gambar laten yang menghasilkan gambar dari prompt teks. Generator Gambar mengharuskan model dasar cocok dengan format model runwayml/stable-diffusion-v1-5 EMA-only, berdasarkan model berikut:

Model dasar berikut juga kompatibel dengan Generator Gambar:

Setelah mendownload model dasar, gunakan image_generator_converter untuk mengonversi model ke dalam format di perangkat yang sesuai untuk Generator Gambar.

Instal dependensi yang diperlukan:

$ pip install torch typing_extensions numpy Pillow requests pytorch_lightning absl-py

Jalankan skrip convert.py:

$ python3 convert.py --ckpt_path <ckpt_path> --output_path <output_path>

Model plugin

Model plugin di bagian ini dikembangkan oleh Google dan harus digunakan bersama dengan model dasar. Model plugin memungkinkan Generator Gambar menerima gambar kondisi bersama dengan perintah teks sebagai input, yang memungkinkan Anda mengontrol struktur gambar yang dihasilkan. Model plugin menyediakan kemampuan yang mirip dengan ControlNet, dengan arsitektur baru yang khusus untuk difusi di perangkat.

Model plugin harus ditentukan dalam opsi dasar dan mungkin mengharuskan Anda mendownload file model tambahan. Setiap plugin memiliki persyaratan unik untuk gambar kondisi, yang dapat dibuat oleh Generator Gambar.

Plugin Canny Edge

Plugin Canny Edge menerima gambar kondisi yang menguraikan tepi yang diinginkan dari gambar yang dihasilkan. Model dasar menggunakan tepi yang tersirat oleh gambar kondisi, dan menghasilkan gambar baru berdasarkan perintah teks. Generator Gambar berisi kemampuan bawaan untuk membuat gambar kondisi, dan hanya memerlukan mendownload model plugin.

Download plugin Canny Edge

Plugin Canny Edge berisi opsi konfigurasi berikut:

Nama Opsi Deskripsi Rentang Nilai Nilai Default
threshold1 Ambang batas pertama untuk prosedur Histeresis. Float 100
threshold2 Ambang batas kedua untuk prosedur hiperesis. Float 200
apertureSize Ukuran bukaan untuk operator Sobel. Rentang biasanya antara 3-7. Integer 3
l2Gradient Apakah norma L2 digunakan untuk menghitung besaran gradien gambar, bukan norma L1 default. BOOLEAN False
EdgePluginModelBaseOptions Objek BaseOptions yang menetapkan jalur untuk model plugin. Objek BaseOptions N/A

Untuk informasi lebih lanjut tentang cara kerja opsi konfigurasi ini, lihat Pendeteksi tepi Canny.

Plugin Face Landmark

Plugin Face Landmark menerima output dari Face Landmarker MediaPipe sebagai gambar kondisi. Penanda Wajah menyediakan mesh wajah mendetail dari satu wajah, yang memetakan kehadiran dan lokasi fitur wajah. Model dasar menggunakan pemetaan wajah yang tersirat oleh gambar kondisi, dan menghasilkan wajah baru di atas mesh.

Download plugin penanda wajah

Plugin Landmark Wajah juga memerlukan paket model Penanda Wajah untuk membuat gambar kondisi. Paket model ini adalah paket yang sama dengan yang digunakan oleh tugas Penanda Wajah Wajah.

Download Paket model tempat terkenal wajah

Plugin Face Landmark berisi opsi konfigurasi berikut:

Nama Opsi Deskripsi Rentang Nilai Nilai Default
minFaceDetectionConfidence Skor keyakinan minimum untuk deteksi wajah agar dianggap berhasil. Float [0.0,1.0] 0.5
minFacePresenceConfidence Skor keyakinan minimum skor kehadiran wajah dalam deteksi struktur wajah. Float [0.0,1.0] 0.5
faceModelBaseOptions Objek BaseOptions yang menetapkan jalur untuk model yang membuat gambar kondisi. Objek BaseOptions N/A
FacePluginModelBaseOptions Objek BaseOptions yang menetapkan jalur untuk model plugin. Objek BaseOptions N/A

Untuk mengetahui informasi selengkapnya tentang cara kerja opsi konfigurasi ini, lihat tugas Penanda Wajah.

Plugin Depth

Plugin Depth menerima gambar kondisi yang menentukan kedalaman monokular objek. Model dasar menggunakan gambar kondisi untuk menyimpulkan ukuran dan kedalaman objek yang akan dihasilkan, dan menghasilkan gambar baru berdasarkan perintah teks.

Mendownload plugin Depth

Plugin Depth juga memerlukan model estimasi Kedalaman untuk membuat gambar kondisi.

Download model estimasi Kedalaman

Plugin Depth berisi opsi konfigurasi berikut:

Nama Opsi Deskripsi Rentang Nilai Nilai Default
depthModelBaseOptions Objek BaseOptions yang menetapkan jalur untuk model yang membuat gambar kondisi. Objek BaseOptions N/A
depthPluginModelBaseOptions Objek BaseOptions yang menetapkan jalur untuk model plugin. Objek BaseOptions N/A

Penyesuaian dengan LoRA

Dengan menyesuaikan model dengan LoRA, Generator Gambar dapat menghasilkan gambar berdasarkan konsep tertentu, yang diidentifikasi oleh token unik selama pelatihan. Dengan bobot LoRA baru setelah pelatihan, model ini dapat membuat gambar konsep baru saat token ditentukan dalam perintah teks.

Pembuatan bobot LoRA memerlukan pelatihan model dasar pada gambar objek, orang, atau gaya tertentu, yang memungkinkan model mengenali konsep baru dan menerapkannya saat membuat gambar. Jika Anda membuat bobot LoRa untuk menghasilkan gambar orang dan wajah tertentu, hanya gunakan solusi ini pada wajah Anda atau wajah orang yang telah memberi Anda izin untuk melakukannya.

Di bawah ini adalah output dari model kustom yang dilatih dengan gambar teapot dari set data DreamBooth, menggunakan token "monadikos teapot":

Prompt: teko monadikos di samping cermin

Model yang disesuaikan menerima token dalam perintah dan memasukkan teko yang telah dipelajari untuk digambarkan dari bobot LoRA, lalu menempatkan gambar tersebut di samping cermin seperti yang diminta dalam perintah.

LoRA dengan Vertex AI

Untuk mengetahui informasi selengkapnya, lihat panduan penyesuaian, yang menggunakan Model Garden di Vertex AI untuk menyesuaikan model dengan menerapkan bobot LoRA ke model dasar.