คู่มือการตรวจหาจุดสังเกตของมือ

งาน MediaPipe Hand Outdoorer จะช่วยให้คุณตรวจจับจุดสังเกตของมือในรูปภาพได้ คุณสามารถใช้งานนี้เพื่อค้นหาจุดสำคัญของมือและแสดงผลเอฟเฟกต์ภาพได้ งานนี้ดำเนินการเกี่ยวกับข้อมูลรูปภาพด้วยโมเดลแมชชีนเลิร์นนิง (ML) เป็นข้อมูลคงที่หรือสตรีมแบบต่อเนื่องและส่งจุดสังเกตมือในพิกัดรูปภาพ จุดสังเกตของมือในพิกัดโลก และความถนัดของมือ(ซ้าย/ขวา) ของมือที่ตรวจพบหลายมือ

ลองเลย

เริ่มต้นใช้งาน

เริ่มใช้งานนี้โดยทำตามคำแนะนำในการใช้งานสำหรับแพลตฟอร์มเป้าหมาย คำแนะนำเฉพาะแพลตฟอร์มเหล่านี้จะแนะนำการใช้งานเบื้องต้นของงานนี้ ซึ่งรวมถึงโมเดลที่แนะนำและตัวอย่างโค้ดที่มีตัวเลือกการกำหนดค่าที่แนะนำ

รายละเอียดงาน

ส่วนนี้จะอธิบายความสามารถ อินพุต เอาต์พุต และตัวเลือกการกำหนดค่าของงานนี้

ฟีเจอร์

  • การประมวลผลรูปภาพอินพุต - การประมวลผลรวมถึงการหมุนรูปภาพ การปรับขนาด การทำให้เป็นมาตรฐาน และการแปลงพื้นที่สี
  • เกณฑ์คะแนน - กรองผลลัพธ์ตามคะแนนการคาดการณ์
ข้อมูลงาน เอาต์พุตของงาน
เครื่องมือจุดสังเกตของมือถือจะยอมรับการป้อนข้อมูลประเภทใดประเภทหนึ่งต่อไปนี้
  • ภาพนิ่ง
  • เฟรมวิดีโอที่ถอดรหัสแล้ว
  • ฟีดวิดีโอสด
Handจุดสังเกตจะแสดงผลลัพธ์ดังต่อไปนี้
  • มือของมือที่ตรวจพบ
  • จุดสังเกตของมือที่ตรวจพบในพิกัดรูปภาพ
  • จุดสังเกตของมือที่ตรวจพบในพิกัดโลก

ตัวเลือกการกำหนดค่า

งานมีตัวเลือกการกำหนดค่าต่อไปนี้

ชื่อตัวเลือก คำอธิบาย ช่วงของค่า ค่าเริ่มต้น
running_mode ตั้งค่าโหมดการทำงาน มี 3 โหมดดังนี้

IMAGE: โหมดสำหรับการป้อนข้อมูลรูปภาพเดียว

วิดีโอ: โหมดสำหรับเฟรมที่ถอดรหัสของวิดีโอ

LIVE_Stream: โหมดสำหรับสตรีมแบบสดของข้อมูลอินพุต เช่น จากกล้อง ในโหมดนี้ ต้องมีการเรียกใช้ resultsListener เพื่อตั้งค่า Listener เพื่อรับผลลัพธ์แบบไม่พร้อมกัน
{IMAGE, VIDEO, LIVE_STREAM} IMAGE
num_hands จำนวนมือสูงสุดที่เครื่องมือตรวจจับจุดสังเกตของมือตรวจพบ Any integer > 0 1
min_hand_detection_confidence คะแนนความเชื่อมั่นขั้นต่ำสำหรับการตรวจจับมือที่จะถือว่าประสบความสำเร็จในโมเดลการตรวจจับฝ่ามือ 0.0 - 1.0 0.5
min_hand_presence_confidence คะแนนความเชื่อมั่นขั้นต่ำสำหรับคะแนนการแสดงตัวของมือในโมเดลการตรวจจับจุดสังเกตของมือ ในโหมดวิดีโอและโหมดสตรีมแบบสด หากคะแนนความเชื่อมั่นของมือจากโมเดลจุดสังเกตของมืออยู่ต่ำกว่าเกณฑ์นี้ จุดสังเกตของมือจะทริกเกอร์โมเดลการตรวจจับฝ่ามือ หากไม่เป็นเช่นนั้น อัลกอริทึมการติดตามมือน้ำหนักเบาจะเป็นตัวกำหนดตำแหน่งของมือสำหรับการตรวจจับจุดสังเกตที่ตามมา 0.0 - 1.0 0.5
min_tracking_confidence คะแนนความเชื่อมั่นขั้นต่ำสำหรับการติดตามมือจะถือว่าประสบความสำเร็จ นี่คือเกณฑ์ IoU ของกรอบล้อมรอบระหว่างมือในเฟรมปัจจุบันและเฟรมสุดท้าย ในโหมดวิดีโอและโหมดสตรีมของมือจุดสังเกต หากติดตามไม่สำเร็จ จุดสังเกตของมือจะทริกเกอร์การตรวจจับมือ มิฉะนั้นระบบจะข้ามการตรวจจับมือ 0.0 - 1.0 0.5
result_callback ตั้งค่า Listener ผลลัพธ์ให้รับผลการตรวจจับแบบอะซิงโครนัสเมื่อตัวทำเครื่องหมายสำหรับมืออยู่ในโหมดสตรีมแบบสด ใช้ได้เมื่อตั้งค่าโหมดทำงานเป็น LIVE_STREAM เท่านั้น ไม่มีข้อมูล ไม่มีข้อมูล

รูปแบบ

Handจุดสังเกตใช้แพ็กเกจโมเดลที่มีโมเดลแพ็กเกจ 2 แบบ ได้แก่ โมเดลการตรวจจับฝ่ามือและโมเดลการตรวจจับจุดสังเกตของมือ คุณต้องมีแพ็กเกจโมเดลที่มีโมเดลทั้ง 2 รายการนี้เพื่อเรียกใช้งานนี้

ชื่อโมเดล รูปร่างอินพุต ประเภทการหาปริมาณ การ์ดโมเดล ฉบับ
HandLandmarker (เต็ม) 192 x 192, 224 x 224 ทศนิยม 16 ข้อมูล ล่าสุด

แพ็กเกจโมเดลจุดสังเกตแบบเข็มจะตรวจจับการแปลจุดสำคัญของพิกัดแบบใช้สนับมือ 21 รายการภายในบริเวณที่ตรวจพบ โมเดลนี้ได้รับการฝึกจากรูปภาพจริงประมาณ 30, 000 ภาพ รวมถึงโมเดลมือสังเคราะห์ที่แสดงภาพจากพื้นหลังต่างๆ

แพ็กเกจโมเดลเครื่องมือจุดสังเกตด้วยมือประกอบด้วยโมเดลการตรวจจับฝ่ามือและ โมเดลการตรวจจับจุดสังเกตของมือ โมเดลการตรวจจับฝ่ามือจะระบุตำแหน่งมือภายในรูปภาพอินพุต และโมเดลการตรวจจับจุดสังเกตจะระบุจุดสังเกตที่เจาะจงบนรูปภาพมือที่ครอบตัดซึ่งกำหนดโดยโมเดลการตรวจจับฝ่ามือ

เนื่องจากการเรียกใช้โมเดลการตรวจจับฝ่ามือจะใช้เวลานาน เมื่ออยู่ในโหมดการวิ่งวิดีโอหรือสตรีมแบบสด Hand Millenniumer จึงใช้กรอบล้อมรอบที่กำหนดโดยโมเดลจุดสังเกตของมือในเฟรมเดียวเพื่อกำหนดพื้นที่ของมือสำหรับเฟรมต่อๆ ไป จุดแลนด์มาร์กด้วยมือจะทริกเกอร์โมเดลการตรวจจับฝ่ามืออีกครั้งเฉพาะในกรณีที่โมเดลจุดสังเกตของมือไม่ได้ระบุว่ามีมืออยู่หรือไม่ ซึ่งจะลดจำนวนครั้งที่โมเดลการตรวจจับฝ่ามือ ใช้มือจุดสังเกต

การเปรียบเทียบงาน

นี่คือการเปรียบเทียบงานสำหรับทั้งไปป์ไลน์ตามโมเดลที่ฝึกล่วงหน้าไว้ข้างต้น ผลของเวลาในการตอบสนองคือเวลาในการตอบสนองโดยเฉลี่ยใน Pixel 6 ที่ใช้ CPU / GPU

ชื่อโมเดล เวลาในการตอบสนองของ CPU เวลาในการตอบสนองของ GPU
HandLandmarker (เต็ม) 17.12 มิลลิวินาที 12.27 มิลลิวินาที