คำแนะนำการตั้งค่าสำหรับ Android

หน้านี้แสดงวิธีตั้งค่าสภาพแวดล้อมการพัฒนาเพื่อใช้ MediaPipe Tasks ในแอปพลิเคชัน Android ของคุณ

อุปกรณ์และแพลตฟอร์มที่รองรับ

ในการสร้างแอปพลิเคชัน Android ด้วย MediaPipe Tasks การพัฒนาของคุณ ต้องการสิ่งต่อไปนี้

  • Android Studio ที่มี เวอร์ชันแนะนำของ 2021.1.1 (Bumblebee) หรือเวอร์ชันอื่นๆ ที่เข้ากันได้เป็นอย่างน้อย IDE
  • Android SDK เวอร์ชัน 24 ขึ้นไป
  • อุปกรณ์ Android ที่มี SDK เวอร์ชันต่ำสุดเป็นอย่างต่ำ โปรแกรมจำลอง Android อาจใช้ไม่ได้กับบางงาน

การตั้งค่าสภาพแวดล้อมสำหรับนักพัฒนาแอป

ก่อนที่จะเรียกใช้งาน MediaPipe ในแอปพลิเคชัน Android คุณต้องดำเนินการอย่างใดอย่างหนึ่งต่อไปนี้ แอปที่มีอยู่หรือสร้างโปรเจ็กต์ Android Studio ใหม่ในเครื่องของคุณ MediaPipe เหมาะกับข้อมูล ของแอปแล้ว ซึ่งมีข้อมูลแอปพลิเคชันและตรรกะทางธุรกิจ สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ สถาปัตยกรรมแอป Android โปรดดูคู่มือสำหรับแอป สถาปัตยกรรม

การตั้งค่าอุปกรณ์ Android

คุณต้องเปิดใช้ตัวเลือกสำหรับนักพัฒนาซอฟต์แวร์และการแก้ไขข้อบกพร่อง USB ในอุปกรณ์ Android จริง ก่อนนำไปใช้ทดสอบแอปพลิเคชันของคุณ หากต้องการทราบวิธีการกำหนดค่า อุปกรณ์ที่มีตัวเลือกสำหรับนักพัฒนาซอฟต์แวร์ โปรดดูกำหนดค่านักพัฒนาแอปในอุปกรณ์ ตัวเลือกเพิ่มเติม

สำหรับงานที่ไม่มีกล้องหรือไมโครโฟนของอุปกรณ์ คุณสามารถใช้ โปรแกรมจำลองอุปกรณ์ Android แทนอุปกรณ์ Android จริง สำหรับคำแนะนำ ในการตั้งค่าโปรแกรมจำลอง Android โปรดดูเรียกใช้แอปใน Android โปรแกรมจำลอง

ตัวอย่างการตั้งค่าโค้ด

MediaPipe ที่เก็บตัวอย่าง มีแอปพลิเคชัน Android ตัวอย่างสำหรับงาน MediaPipe แต่ละงาน คุณสามารถสร้าง จากโค้ดตัวอย่าง สร้างโปรเจ็กต์ แล้วเรียกใช้

วิธีนำเข้าและสร้างโปรเจ็กต์โค้ดตัวอย่าง

  1. เริ่ม Android Studio
  2. จาก Android Studio ให้เลือกไฟล์ > ใหม่ > นำเข้าโปรเจ็กต์
  3. ไปที่ไดเรกทอรีโค้ดตัวอย่างที่มีไฟล์ build.gradle และเลือกไดเรกทอรีนั้น เช่น วันที่ .../mediapipe/examples/text_classification/android/build.gradle
  4. หาก Android Studio ขอ Gradle Sync ให้เลือกตกลง
  5. ตรวจสอบว่าอุปกรณ์ Android เชื่อมต่ออยู่กับคอมพิวเตอร์และนักพัฒนาแอป เปิดใช้งานโหมดแล้ว คลิกลูกศร Run สีเขียว

หากเลือกไดเรกทอรีที่ถูกต้อง Android Studio จะสร้างโปรเจ็กต์ใหม่และ เป็นผู้สร้างขึ้นมา ขั้นตอนนี้อาจใช้เวลา 2-3 นาที ขึ้นอยู่กับความเร็วในการประมวลผล และกรณีที่เคยใช้ Android Studio สำหรับโปรเจ็กต์อื่นๆ เมื่อสร้าง Android Studio จะแสดงข้อความ BUILD SUCCESSFUL ใน แผงสถานะเอาต์พุตของบิลด์

วิธีเรียกใช้โปรเจ็กต์

  1. จาก Android Studio ให้เรียกใช้โปรเจ็กต์โดยเลือกเรียกใช้ > Run...
  2. เลือกอุปกรณ์ Android (หรือโปรแกรมจำลอง) ที่แนบมาเพื่อทดสอบแอป

ทรัพยากร Dependency ของ MediaPipe Tasks

MediaPipe Tasks มีไลบรารีที่สร้างไว้ล่วงหน้า 3 รายการสำหรับการมองเห็น ข้อความ และเสียง ไฟล์โมเดล .tflite ต้องอยู่ในไดเรกทอรี Asset ของ Android ที่ใช้โมเดลดังกล่าว เพิ่ม ขึ้นอยู่กับงาน MediaPipe ที่แอปใช้ ไลบรารีวิสัยทัศน์ ข้อความ หรือเสียง ลงในรายการทรัพยากร Dependency ภายใน build.gradle ไฟล์

งานของ Generative AI

ไลบรารี MediaPipe Tasks Generative AI มีงานที่จัดการรูปภาพหรือ การสร้างข้อความ วิธีนำเข้าไลบรารี Generative AI ของ MediaPipe Tasks Android Studio ให้เพิ่มทรัพยากร Dependency ลงในไฟล์ build.gradle

เครื่องมือสร้างรูปภาพ

งาน MediaPipe Image Generator อยู่ใน คลัง tasks-vision-image-generator เพิ่มการอ้างอิงลงใน build.gradle ไฟล์:

dependencies {
    implementation 'com.google.mediapipe:tasks-vision-image-generator:latest.release'
}

API การอนุมานของ LLM

งาน MediaPipe LLM Inference อยู่ใน tasks-genai ไลบรารี เพิ่มทรัพยากร Dependency ลงในไฟล์ build.gradle

dependencies {
    implementation 'com.google.mediapipe:tasks-genai:latest.release'
}

งานด้านการมองเห็น

ไลบรารีวิสัยทัศน์ของ MediaPipe Tasks มีงานที่จัดการรูปภาพหรือวิดีโอ อินพุต หากต้องการนำเข้าไลบรารีวิสัยทัศน์ MediaPipe Tasks ใน Android Studio ให้เพิ่มเมธอด ทรัพยากร Dependency ต่อไปนี้ในไฟล์ build.gradle

dependencies {
    implementation 'com.google.mediapipe:tasks-vision:latest.release'
}

งานด้านข้อความ

ไลบรารีข้อความ MediaPipe Tasks มีงานที่จัดการข้อมูลภาษาใน รูปแบบข้อความ หากต้องการนำเข้าไลบรารีข้อความ MediaPipe Tasks ใน Android Studio ให้เพิ่ม ทรัพยากร Dependency ต่อไปนี้ในไฟล์ build.gradle

dependencies {
    implementation 'com.google.mediapipe:tasks-text:latest.release'
}

งานเกี่ยวกับเสียง

ไลบรารีเสียงของ MediaPipe Tasks มีงานที่จัดการอินพุตเสียง ถึง นำเข้าไลบรารีเสียงของ MediaPipe Tasks ใน Android Studio เพิ่มข้อมูลต่อไปนี้ ทรัพยากร Dependency สำหรับไฟล์ build.gradle ของคุณ:

dependencies {
    implementation 'com.google.mediapipe:tasks-audio:latest.release'
}

การกำหนดค่า BaseOptions

BaseOptions ช่วยให้กำหนดค่าทั่วไปของ MediaPipe Task API ได้

ชื่อตัวเลือก คำอธิบาย ค่าที่ยอมรับ
modelAssetBuffer เนื้อหาของไฟล์เนื้อหาโมเดลเป็น ByteBuffer โดยตรงหรือ MappedByteBuffer ByteBuffer หรือ MappedByteBuffer เป็นสตริง
modelAssetPath เส้นทางของโมเดลไปยังไฟล์เนื้อหาโมเดลในโฟลเดอร์ชิ้นงานแอป Android เส้นทางของไฟล์เป็นสตริง
modelAssetFileDescriptor จำนวนเต็มของคำอธิบายไฟล์ดั้งเดิมของไฟล์เนื้อหาโมเดล จำนวนเต็มที่ระบุข้อบ่งชี้ไฟล์
Delegate เปิดใช้การเร่งฮาร์ดแวร์ผ่านผู้รับมอบสิทธิ์อุปกรณ์เพื่อเรียกใช้ไปป์ไลน์ MediaPipe ค่าเริ่มต้น: CPU [CPU,
GPU]

การเร่งฮาร์ดแวร์

งาน MediaPipe รองรับการใช้งานหน่วยประมวลผลกราฟิก (GPU) โมเดลแมชชีนเลิร์นนิง ในอุปกรณ์ Android คุณสามารถเปิดใช้งาน การดำเนินการโมเดลของคุณที่มีการเร่งโดยใช้ GPU โดยใช้ผู้รับมอบสิทธิ์ ตัวแทนที่ทำหน้าที่เป็น ไดรเวอร์ฮาร์ดแวร์สำหรับ MediaPipe ช่วยให้คุณเรียกใช้โมเดลบน GPU ได้ แทนที่จะใช้โปรเซสเซอร์ CPU มาตรฐาน

กำหนดค่าการมอบสิทธิ์ GPU ในตัวเลือกงานผ่าน BaseOptions:

BaseOptions baseOptions = BaseOptions.builder().useGpu().build();

การแก้ปัญหา

สำหรับความช่วยเหลือสำหรับคำถามด้านเทคนิคที่เกี่ยวข้องกับ MediaPipe โปรดไปที่การอภิปราย group หรือ Stack รายการเพิ่มเติมสำหรับการสนับสนุนจาก กับชุมชน หากต้องการรายงานข้อบกพร่องหรือส่งคำขอฟีเจอร์ ให้แจ้งปัญหาใน GitHub

สำหรับความช่วยเหลือในการตั้งค่าสภาพแวดล้อมในการพัฒนาซอฟต์แวร์ Android โปรดไปที่ Android เอกสารประกอบสำหรับนักพัฒนาซอฟต์แวร์