Memperkenalkan MediaPipe Solutions untuk Machine Learning di Perangkat

MEI 11, 2023
Paul Ruiz Senior Developer Relations Engineer
Kris Tonthat Technical Writer

MediaPipe Solutions sekarang sudah tersedia dalam versi pratinjau

Pekan ini di Google I/O 2023, kami memperkenalkan MediaPipe Solutions, koleksi baru alat machine learning di perangkat untuk menyederhanakan proses developer. Ini terdiri dari MediaPipe Studio, MediaPipe Tasks, dan MediaPipe Model Maker. Alat-alat ini menyediakan solusi tanpa kode hingga hemat kode untuk tugas-tugas umum machine learning di perangkat, seperti klasifikasi audio, segmentasi, dan penyematan teks, untuk developer seluler, web, desktop, dan IoT.

solutions1

Solusi baru

Pada bulan Desember 2022, kami meluncurkan pratinjau MediaPipe dengan lima tugas: pengenalan gestur, pemindai tangan, klasifikasi gambar, deteksi objek, dan klasifikasi teks. Hari ini, kami sangat senang dapat mengabarkan bahwa kami telah meluncurkan sembilan tugas tambahan untuk Google I/O, dan masih banyak lagi yang akan segera menyusul. Beberapa tugas baru ini meliputi:

  • Face Landmarker, yang mendeteksi titik-titik wajah dan bentuk perpaduannya untuk menentukan ekspresi wajah manusia, seperti tersenyum, alis terangkat, dan berkedip. Selain itu, tugas ini berguna untuk menerapkan efek pada wajah dalam tiga dimensi yang sesuai dengan tindakan pengguna.

  • Image Segmenter, yang memungkinkan Anda membagi gambar ke dalam beberapa area berdasarkan kategori yang sudah ditentukan sebelumnya. Anda bisa menggunakan fungsionalitas ini untuk mengidentifikasi manusia atau beberapa objek, kemudian menerapkan efek visual seperti pemburaman latar belakang.

  • Interactive Segmenter, yang mengambil area yang diminati pada sebuah gambar, memperkirakan batas-batas objek pada lokasi tersebut, dan menampilkan segmentasi objek sebagai data gambar.

  • Image Generator, yang memungkinkan developer menerapkan model difusi dalam aplikasi mereka untuk membuat konten visual.

Segera hadir

  • Face Stylizer, yang memungkinkan Anda mengambil referensi gaya yang sudah ada dan menerapkannya ke wajah pengguna.

solutions2

MediaPipe Studio

Alat MediaPipe pertama kami memungkinkan Anda melihat dan menguji model yang kompatibel dengan MediaPipe di web, daripada harus membuat aplikasi pengujian khusus Anda sendiri. Anda bahkan bisa menggunakan MediaPipe Studio dalam pratinjau sekarang juga untuk mencoba tugas-tugas baru yang disebutkan di sini, dan semua tambahannya, dengan mengunjungi halaman MediaPipe Studio.

Selain itu, kami memiliki rencana untuk mengembangkan MediaPipe Studio demi menyediakan solusi pelatihan model tanpa kode sehingga Anda bisa membuat model baru tanpa mengeluarkan banyak biaya ekstra.

MediaPipe Tasks

MediaPipe Tasks menyederhanakan deployment ML di perangkat untuk developer web, seluler, IoT, dan desktop dengan library hemat kode. Anda bisa dengan mudah mengintegrasikan solusi machine learning di perangkat, seperti contoh di atas, ke aplikasi Anda dalam beberapa baris kode tanpa harus mempelajari semua detail implementasi di balik solusi tersebut. Sekarang ini mencakup alat untuk tiga kategori: visi, audio, dan teks.

Untuk memberikan gambaran yang lebih baik tentang cara menggunakan MediaPipe Tasks, mari kita lihat aplikasi Android yang melakukan pengenalan gestur.

Kode berikut akan membuat objek GestureRecognizer menggunakan model machine learning bawaan, kemudian objek tersebut bisa digunakan berulang kali untuk menampilkan daftar hasil pengenalan berdasarkan gambar input:

// LANGKAH 1: Buat pengenal gestur 
val baseOptions = BaseOptions.builder().setModelAssetPath("gesture_recognizer.task") .build()
 
val gestureRecognizerOptions = GestureRecognizerOptions.builder() .setBaseOptions(baseOptions).build() 
 
val gestureRecognizer = GestureRecognizer.createFromOptions( context, gestureRecognizerOptions) 
 
// LANGKAH 2: Siapkan gambar 
val mpImage = BitmapImageBuilder(bitmap).build() 
 
// LANGKAH 3: Jalankan inferensi 
val result = gestureRecognizer.recognize(mpImage)

Seperti yang Anda lihat, hanya dengan beberapa baris kode, Anda bisa mengimplementasikan fitur yang terlihat rumit dalam aplikasi Anda. Dikombinasikan dengan fitur Android lainnya, seperti CameraX, Anda dapat memberikan pengalaman yang menyenangkan bagi pengguna.

Selain kemudahan, salah satu keuntungan utama lainnya menggunakan MediaPipe Tasks adalah kode Anda akan terlihat serupa di berbagai platform, apa pun tugas yang Anda gunakan. Hal ini akan membantu Anda mengembangkan lebih cepat karena Anda bisa menggunakan kembali logika yang sama untuk setiap aplikasi.

MediaPipe Model Maker

Meskipun dapat mengenali dan menggunakan gestur dalam aplikasi adalah hal yang sangat bagus, tetapi bagaimana jika Anda mengalami situasi tertentu ketika Anda perlu mengenali gestur khusus di luar yang disediakan oleh model bawaan? Di sinilah MediaPipe Model Maker berperan. Dengan Model Maker, Anda bisa melatih ulang model bawaan pada set data hanya dengan beberapa ratus contoh gestur tangan baru, dan dengan cepat membuat model baru yang disesuaikan untuk kebutuhan Anda. Sebagai contoh, hanya dengan beberapa baris kode, Anda dapat menyesuaikan model untuk memainkan Batu, Kertas, Gunting.

solutions3
from mediapipe_model_maker import gesture_recognizer 
 
# LANGKAH 1: Muat set data. 
data = gesture_recognizer.Dataset.from_folder(dirname='images') train_data, validation_data = data.split(0.8) 
 
# LANGKAH 2: Latih model khusus. 
model = gesture_recognizer.GestureRecognizer.create( train_data=train_data, validation_data=validation_data, hparams=gesture_recognizer.HParams(export_dir=export_dir) ) 
 
# LANGKAH 3: Evaluasi menggunakan data yang tidak terlihat. 
metric = model.evaluate(test_data) 
 
# LANGKAH 4: Ekspor sebagai paket aset model. model.export_model(model_name='rock_paper_scissor.task')

Setelah melatih ulang model, Anda bisa menggunakannya di aplikasi dengan MediaPipe Tasks untuk pengalaman yang lebih serbaguna.

Memulai

Untuk mempelajari lebih lanjut, tonton sesi I/O 2023 kami: ML yang mudah di perangkat dengan MediaPipe, Tingkatkan aplikasi web Anda dengan machine learning dan MediaPipe, dan Yang baru di machine learning, serta lihat dokumentasi resminya di developers.google.com/mediapipe.

Apa berikutnya?

Kami akan terus meningkatkan dan menyediakan fitur baru untuk MediaPipe Solutions, termasuk MediaPipe Tasks baru dan pelatihan tanpa kode melalui MediaPipe Studio. Anda juga bisa mendapatkan informasi terbaru dengan bergabung ke grup pengumuman MediaPipe Solutions, di sini kami akan memberikan pengumuman ketika fitur baru sudah tersedia.

Kami menantikan semua hal menarik yang akan Anda buat, jadi pastikan untuk membagikannya dengan @googledevs dan komunitas developer Anda!