Tugas Stylizer Wajah MediaPipe memungkinkan Anda menerapkan gaya wajah ke wajah dalam gambar. Anda dapat menggunakan tugas ini untuk membuat avatar virtual dengan berbagai gaya.
Contoh kode yang dijelaskan dalam petunjuk ini tersedia di GitHub. Untuk mengetahui informasi selengkapnya terkait kemampuan, model, dan opsi konfigurasi. tugas ini, lihat Ringkasan.
Contoh kode
Kode contoh untuk Stylizer Wajah menyediakan implementasi lengkap dari fungsi ini tugas di JavaScript untuk referensi Anda. Kode ini membantu Anda menguji tugas ini dan mulai membangun aplikasi penataan wajah Anda sendiri. Anda dapat melihat, menjalankan, dan edit contoh Stilizer Wajah kode hanya dengan menggunakan web Anda browser.
Penyiapan
Bagian ini menjelaskan langkah-langkah utama untuk menyiapkan lingkungan pengembangan khususnya untuk menggunakan Stylizer Wajah. Untuk informasi umum tentang penyiapan lingkungan pengembangan web dan JavaScript, termasuk versi platform persyaratan layanan, lihat Panduan penyiapan untuk web.
Paket JavaScript
Kode Stylizer Wajah tersedia melalui MediaPipe @mediapipe/tasks-vision
NPM. Anda dapat menemukan dan
download library ini dengan mengikuti petunjuk di platform Penyiapan
panduan kami.
Anda dapat menginstal paket yang diperlukan melalui NPM menggunakan perintah berikut:
npm install @mediapipe/tasks-vision
Jika Anda ingin mengimpor kode tugas dengan jaringan penayangan konten (CDN) tambahkan kode berikut di kolom <head> di file HTML Anda:
<!-- You can replace JSDeliver with another CDN if you prefer -->
<head>
<script src="https://cdn.jsdelivr.net/npm/@mediapipe/tasks-vision/vision_bundle.js"
crossorigin="anonymous"></script>
</head>
Model
Tugas Stylizer Wajah MediaPipe memerlukan model terlatih yang kompatibel dengan tugas Anda. Untuk mengetahui informasi selengkapnya tentang model terlatih yang tersedia untuk Stylizer Wajah, lihat ringkasan tugas bagian Model.
Pilih dan download model, lalu simpan dalam direktori project Anda:
<dev-project-root>/app/shared/models/
Membuat tugas
Gunakan salah satu fungsi createFrom...()
Stylizer Wajah untuk menyiapkan tugas
menjalankan inferensi. Gunakan fungsi createFromModelPath()
dengan kerabat atau
jalur absolut ke file model terlatih. Jika model Anda sudah dimuat ke
Anda dapat menggunakan metode createFromModelBuffer()
.
Contoh kode di bawah ini menunjukkan penggunaan fungsi createFromOptions()
untuk
menyiapkan tugas. Fungsi createFromOptions
memungkinkan Anda menyesuaikan
Stylizer Wajah dengan opsi konfigurasi.
Kode berikut menunjukkan cara membangun dan mengonfigurasi tugas dengan opsi:
const vision = await FilesetResolver.forVisionTasks(
// path/to/wasm/root
"https://cdn.jsdelivr.net/npm/@mediapipe/tasks-vision@latest/wasm"
);
const facestylizer = await FaceStylizer.createFromOptions(
vision,
{
baseOptions: {
modelAssetPath: "https://storage.googleapis.com/mediapipe-models/face_stylizer/blaze_face_stylizer/float32/latest/face_stylizer_color_sketch.task"
},
});
Menyiapkan data
Stylizer Wajah dapat mempercantik wajah dalam gambar dalam format apa pun yang didukung host browser. Tugas ini juga menangani pra-pemrosesan input data, termasuk mengubah ukuran, rotasi, dan normalisasi nilai.
Menjalankan tugas
Stylizer Wajah menggunakan metode stylize()
untuk memicu inferensi. Tugas
memproses data, mencoba memperindah
wajah, dan kemudian melaporkan hasilnya.
Panggilan ke metode stylize()
Stylizer Wajah berjalan secara sinkron dan memblokir
thread antarmuka pengguna.
Kode berikut menunjukkan cara mengeksekusi pemrosesan dengan model tugas:
const image = document.getElementById("image") as HTMLImageElement;
const faceStylizerResult = faceStylizer.stylize(image);
Menangani dan menampilkan hasil
Stylizer Wajah menampilkan objek MPImage
dengan gaya
wajah yang terlihat jelas di dalam gambar input.
Berikut ini contoh data output dari tugas ini:
Output di atas dibuat dengan menerapkan Sketsa warna ke gambar input berikut: