ทำตามคำแนะนำด้านล่างเพื่อสร้างแอปตัวอย่างสำหรับ iOS ที่ใช้ MediaPipe กรอบการทำงาน หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับตัวอย่างแอปเหล่านี้ ให้เริ่มต้นจากสวัสดี โลก! บน iOS
การสร้างแอปตัวอย่างสำหรับ iOS
วิชาบังคับก่อน
ติดตั้ง Mediapipe Framework โดยทำตามวิธีการเหล่านี้
ติดตั้ง Xcode จากนั้นติดตั้ง เครื่องมือบรรทัดคำสั่งโดยใช้
xcode-select --install
ติดตั้ง Bazelisk
เราขอแนะนำให้ใช้ Homeในชุด เพื่อดาวน์โหลดเวอร์ชันล่าสุด
brew install bazelisk
ตั้งค่า Python 3.7 เป็นเวอร์ชัน Python เริ่มต้นและติดตั้ง Python "6" ไลบรารี ซึ่งจำเป็นสำหรับ TensorFlow
pip3 install --user six
โคลนที่เก็บ MediaPipe
git clone https://github.com/google/mediapipe.git
ตั้งค่าคำนำหน้ารหัสชุด
แอป iOS ทั้งหมดต้องมีรหัสชุด และต้องมีโปรไฟล์การจัดสรร ที่ช่วยให้คุณติดตั้งแอปด้วยรหัสนั้นลงในโทรศัพท์ เพื่อหลีกเลี่ยงการชน ระหว่างผู้ใช้ MediaPipe ที่ต่างกัน คุณต้องกำหนดค่าคำนำหน้าที่ไม่ซ้ำสำหรับ Bundle ID ของแอปเดโม iOS
ถ้าคุณมีโปรไฟล์การจัดสรรที่กำหนดเอง โปรดดู การจัดสรรที่กำหนดเองที่ด้านล่าง
หรือเรียกใช้คำสั่งนี้เพื่อสร้างคำนำหน้าที่ไม่ซ้ำกัน
python3 mediapipe/examples/ios/link_local_profiles.py
สร้างโปรเจ็กต์ Xcode
ซึ่งจะช่วยให้คุณแก้ไขและแก้ไขข้อบกพร่องหนึ่งในตัวอย่างแอปใน Xcode ได้ และ ช่วยให้คุณสามารถใช้การจัดสรรอัตโนมัติได้ (ดูหัวข้อภายหลัง)
เราจะใช้เครื่องมือที่เรียกว่า Tulsi ในการสร้าง โปรเจ็กต์ Xcode จากการกำหนดค่าบิลด์ของ Bazel
# cd out of the mediapipe directory, then: git clone https://github.com/bazelbuild/tulsi.git cd tulsi # remove Xcode version from Tulsi's .bazelrc (see http://github.com/bazelbuild/tulsi#building-and-installing): sed -i .orig '/xcode_version/d' .bazelrc # build and run Tulsi: sh build_and_run.sh
การดำเนินการนี้จะติดตั้ง
Tulsi.app
ภายในไดเรกทอรีApplications
ใน ไดเรกทอรีหน้าแรกเปิด
mediapipe/Mediapipe.tulsiproj
โดยใช้แอป Tulsiเลือกการกำหนดค่า MediaPipe ในแท็บการกำหนดค่า จากนั้นกด สร้าง ด้านล่างได้เลย ระบบจะขอตำแหน่งที่จะบันทึกโปรเจ็กต์ Xcode เมื่อสร้างโปรเจ็กต์แล้ว โปรเจ็กต์จะเปิดใน Xcode
หากคุณได้รับข้อผิดพลาดเกี่ยวกับรหัสชุด โปรดดูที่ ส่วนก่อนหน้า
ตั้งค่าการจัดสรร
หากต้องการติดตั้งแอปพลิเคชันในอุปกรณ์ iOS คุณต้องมีโปรไฟล์การจัดสรร มี มี 2 ตัวเลือกดังนี้
การจัดสรรอัตโนมัติ ซึ่งช่วยให้คุณสามารถสร้างและติดตั้งแอปลงใน อุปกรณ์ส่วนตัว โปรไฟล์การจัดสรรได้รับการจัดการโดย Xcode และจะต้อง อัปเดตบ่อย (ใช้ได้ประมาณ 1 สัปดาห์)
การจัดสรรที่กำหนดเอง การดำเนินการนี้ใช้โปรไฟล์การจัดสรรที่เชื่อมโยงกับ บัญชีนักพัฒนาแอป Apple โปรไฟล์เหล่านี้มีระยะเวลามีผลนานกว่าและ กำหนดเป้าหมายอุปกรณ์ได้หลายเครื่อง แต่คุณต้องมีบัญชีนักพัฒนาซอฟต์แวร์แบบชำระเงิน Apple จะรับให้ได้
การจัดสรรอัตโนมัติ
สร้างโปรเจ็กต์ Xcode สำหรับ MediaPipe ตามที่ได้พูดคุยกัน ก่อนหน้านี้
ในตัวนำทางโปรเจ็กต์ในแถบด้านข้างทางซ้าย ให้เลือก "Mediapipe"
เลือกเป้าหมายแอปพลิเคชัน 1 รายการ เช่น HandTrackingGpuApp
เลือกช่องทำเครื่องหมาย "การลงนามและ ความสามารถ"
เลือก "จัดการการลงชื่อโดยอัตโนมัติ" และยืนยันกล่องโต้ตอบ
เลือก "ชื่อของคุณ (ทีมส่วนบุคคล)" ในเมนูกล่องโต้ตอบทีม
คุณต้องทำการตั้งค่านี้ 1 ครั้งสำหรับแต่ละแอปพลิเคชันที่ต้องการติดตั้ง ทำขั้นตอนที่ 3-6 ซ้ำตามต้องการ
การดำเนินการนี้จะสร้างโปรไฟล์การจัดสรรสำหรับแต่ละแอปที่คุณเลือก ตอนนี้คุณ คุณต้องบอกให้ Bazel ใช้ เราได้จัดเตรียมสคริปต์ที่จะช่วยให้คุณทำงานได้ง่ายขึ้น
ในเทอร์มินัล ไปยังไดเรกทอรี
mediapipe
ที่คุณโคลน ที่เก็บได้ใช้คําสั่งนี้
python3 mediapipe/examples/ios/link_local_profiles.py
ค้นหาและลิงก์โปรไฟล์การจัดสรรสำหรับแอปพลิเคชันทั้งหมดที่ คุณได้เปิดใช้การจัดสรรอัตโนมัติใน Xcode
การจัดสรรที่กำหนดเอง
- รับโปรไฟล์การจัดสรรจาก Apple
Symlink หรือคัดลอกโปรไฟล์การจัดสรรไปที่
mediapipe/mediapipe/provisioning_profile.mobileprovision
cd mediapipe ln -s ~/Downloads/MyProvisioningProfile.mobileprovision mediapipe/provisioning_profile.mobileprovision
- เปิด
mediapipe/examples/ios/bundle_id.bzl
และเปลี่ยนBUNDLE_ID_PREFIX
ไปยังคำนำหน้าที่เชื่อมโยงกับโปรไฟล์การจัดสรร
สร้างและเรียกใช้แอปโดยใช้ Xcode
สร้างโปรเจ็กต์ Xcode และตรวจสอบว่าได้ตั้งค่าแบบอัตโนมัติหรือ การจัดสรรที่กำหนดเอง
ตอนนี้คุณสามารถเลือกการสาธิต Mediapipe Framework ในเมนูเป้าหมาย และสร้างและเรียกใช้ตามปกติ
สร้างแอปโดยใช้บรรทัดคำสั่ง
ตรวจสอบว่าคุณได้ตั้งค่าการจัดสรรอัตโนมัติหรือการจัดสรรที่กำหนดเองแล้ว
ตัวอย่างเช่น ใช้ MediaPipe Hands ในการเรียกใช้
bazel build -c opt --config=ios_arm64 mediapipe/examples/ios/handtrackinggpu:HandTrackingGpuApp
คุณอาจเห็นคำขอสิทธิ์จาก
codesign
เพื่อลงนามแอปใน Xcode ให้เปิดหน้าต่าง
Devices and Simulators
(command-shift-2)ตรวจสอบว่าอุปกรณ์เชื่อมต่อแล้ว คุณจะเห็นรายการแอปที่ติดตั้ง กดปุ่ม "+" ใต้รายการ แล้วเลือกไฟล์
.ipa
ที่สร้างโดย Bazelตอนนี้คุณเรียกใช้แอปในอุปกรณ์ได้แล้ว