ทดสอบทุก case ที่คาดว่าทำให้เกิด Error
1.การเดินผ่านในระยะใกล้ตัวกล้อง
ทดสอบโดยการเดินผ่านหน้ากล้องโดยไม่แบมือหรือเก็บมือไว้ด้านหลังในระยะตั้งแต่ 10-20 cm โดยประมาณผลลัพธ์ : ในระยะที่ใกล้กล้องมากๆ การรับผลจะเริ่มเพี้ยนและส่งผลให้ไปสั่งการได้ในบางรอบ
2.การเดินผ่านในระยะใกล้ตัวกล้องโดยที่กางมือไปด้วย
ทดสอบโดยการเดินผ่านหน้ากล้องโดยแบมือและแกว่งมือไปมาในระยะตั้งแต่ 10-20 cm โดยประมาณผลลัพธ์ : หากกล้องตรวจจับมือได้ควบคู่กับการเดิน อาจส่งผลให้การเดินผ่านในครั้งต่อไปจะไปสั่งการ Kinect ได้
3.การโบกมือในระยะที่ใกล้ตัวกล้อง
การโบกมือในระยะที่ใกล้ตัวกล้อง : ทำการกางมือและโบกซ้ายขวาในระยะตั้งแต่ 10-20 cm โดยประมาณผลลัพธ์ : อาจส่งผลให้การการตรวจจับรวนและไปสั่งการ Kinect ได้ในบางครั้ง
4.การกางมือบริเวณด้านหน้าตัวโดยให้ห่างจากตัวพอประมาณ
การกางมือบริเวณด้านหน้าตัวโดยให้ห่างจากตัวพอประมาณ : ทำการกางมือให้ห่างจากลำตัวเล็กน้อย และโยกตัวไปมาพร้อมกับมือผลลัพธ์ : จะมีลักษณะคล้ายกับการเดินแบบกางมือ คือ เมื่อกล้องตรวจจับไปมือได้แล้ว หากเราเก็บมือและโยกตัวหรือเอวไปทางซ้ายหรือขวาก็มีโอกาสที่จะไปสั่งการ kinect ได้
5.การเดินผ่านในระยะใกล้ตัวกล้องโดยที่กางมือไปด้วย
การเดินผ่านในระยะใกล้ตัวกล้องโดยที่กางมือไปด้วย : ทดสอบโดยการเดินผ่านหน้ากล้องโดยแบมือและแกว่งมือไปมาในระยะตั้งแต่ 10-20 cm โดยประมาณ ผลลัพธ์คือ หากกล้องตรวจจับมือได้ควบคู่กับการเดิน อาจส่งผลให้การเดินผ่านในครั้งต่อไปจะไปสั่งการ Kinect ได้6.การกางมือบริเวณด้านหน้าตัวโดยให้มือแนบกับตัว
ทำการกางมือนำไปแนบกับลำตัวและโยกตัวไปมาพร้อมกับมือผลลัพธ์ : มีโอกาสน้อยมากที่จะไปสั่งการ Kinect ให้เลื่อนซ้ายหรือขวาได้
คาดถึงสาเหตุของ Error ที่เกิดขึ้น
จากการทดสอบใน case ที่กล่าวมา พอจะจำกัดได้ว่า Error เกิดขึ้นได้ ดังนี้- ระยะที่ใกล้มากเกินไป
- Frame หรือ Blob ที่ตรวจจับว่าเป็นมือยังค้างอยู่
- ความสูงในการติดตั้ง เนื่องจากที่ทดสอบตั้งที่ความสูงจากพื้นประมาณ 75-85 cm
ศึกษาการทำงานทั้งหมดของโค้ดเพื่อหาทางแก้ไข
ได้ทำการศึกษาการทำงานของโค้ดโดยลึกเพื่อตรวจสอบว่าการทำงานจริงๆนั้นเป็นอย่างไร รวมไปถึงตรวจดูลำดับการทำงานว่าลำดับการทำงานเป็นอย่างไร เพื่อหาวิธีจัดการเรื่อง Frame หรือ Blob ที่ยังติดสถานะว่าเป็นมือค้างอยู่ทำให้การตรวจจับผิดพลาดจากการที่ Uncomment Code บางส่วนที่รุ่นพี่ปิดไว้เพื่อลดภาระการทำงานของ Raspberry Pi นั้นช่วยให้การตรวจจับเสถียรขึ้นแต่ยังพบกับปัญหาตามที่กล่าวไว้ข้างต้น
หากสามารถนำข้อมูลที่เป็นภาพตรวจจับจากมือมาแสดงเพิ่มเติมได้จะนำมาเสนอในครั้งถัดไปเพื่อเช็คความถูกต้อง
ปัญหาที่พบของ Kinect เกี่ยวกับ Hotplug
จากการที่ทดลองหาปัญหาหลายๆอย่างขณะทดลองก็ได้พบว่า สาเหตุที่ทดลอง Run Code แล้วไม่สามารถตรวจจับตัว Kinect ได้นั้น นอกจากจะเป็นปัญหาเรื่องพลังงานแล้ว ยังมาจากอีกสาเหตุคือ ในตอนที่ปิดการทำงานของโค้ดนั้น ระบบตรวจจับของ Kinect ยังไม่ถูกปิดไปด้วย เมื่อทดลองปิดโค้ดและ Run Code ใหม่อีกครั้งจึงตรวจหาอุปกรณ์ไม่พบ เพราะ Kinect ยังทำงานอยู่ จึงต้องหาวิธีสั่งการเพื่อปิดการทำงานทั้งโค้ดและกล้องในเวลาเดียวกัน
ไม่มีความคิดเห็น:
แสดงความคิดเห็น