การพัฒนาโปรแกรม Computer Vision สําหรับ Smartphone มีจุดประสงค์เพื่อพัฒนาโปรแกรม Computer Vision เพื่อแยกแยะวัตถุ สําหรับใช้ใน Smartphone และนําไปประยุกต์ต่อกับ Mobile Robot เพื่อช่วยเหลือและอํานวยความสะดวกให้แก่ผู้สูงอายุ โดยขั้นตอนในการทํางานหลักสามารถแบ่งออกเป็น 3 ส่วน ได้แก่ 1) การเขียนแอปพลิเคชันและโปรแกรมต่างๆ 2) แก้ไขข้อผิดพลาดของแอปพลิเคชัน 3) การวัดผลของแอปพลิเคชัน
สมาชิก
- นาย กฤต สุรินทราบูรณ์ โครงการ วมว. โรงเรียนดรุณสิกขาลัย
- นาย กฤติน กิจจารุวรรณกุล โครงการ วมว. โรงเรียนดรุณสิกขาลัย
- นาย ปภินวิทย์ รัตนศิริ โครงการ วมว. โรงเรียนดรุณสิกขาลัย
วัตถุประสงค์
- เพื่อนําคอมพิวเตอร์วิทัศน์ไปใช้ในโทรศัพท์เคลื่อนที่
- เพื่อศึกษาการนําคอมพิวเตอร์วิทัศน์ไปประยุกต์รวมกับ Mobile Robot เพื่อช่วยเหลือและอํานวยความสะดวกให้แก่ผู้สูงอายุ
การดำเนินงาน
- การเขียนแอปพลิเคชันและโปรแกรมต่างๆ โดยเขียนโค้ดการตรวจจับและแยกแยะวัตถุ ดาวโหลดไลบารี่ Tensor Flow Lite object detection ลงบน android studio นำไฟล์ data set ที่ train แล้ว ที่เป็นสกุลไฟล์ .tflite นำมาใส่ลงในแอปพลิเคชัน และเขียนโค้ดคำนวนระยะห่างระหว่างวัตถุกับกล้อง โดยแอปพลิเคชันนี้ไม่สามารถบอกระยะห่างจริงได้ เนื่องจากกล้องที่ใช้มีเพียงกล้องเดียว แต่แอปพลิเคชันสามารถบอกระยะห่างจากวัตถุถึงกล้องเป็นจำนวนเท่ากับความกว้างหรือความยาวของวัตถุ
- เขียน Server และ Client ระหว่างแอปพลิเคชันกับ python ในคอมพิวเตอร์
- แก้ไขข้อผิดพลาดของแอปพลิเคชัน ในขั้นตอนเริ่มต้นการใช้ไลบรารี่ OpenCV นั้นเกิดปัญหา เนื่องจากไลบรารี่นี้ใช้ทรัพยากรเครื่องในปริมาณมาก แอปพลิเคชันจึงทำงานล่าช้า ส่งผลให้แยกแยะวัตถุผิดพลาด จึงเปลี่ยนเป็นไลบรารี่ Tensor Flow Lite ที่ใช้ปริมาณทรัพยากรในเครื่องน้อยกว่า แอปพลิเคชันจึงทำงานได้รวดเร็วขึ้น และเขียน data ใหม่ โดยเจาะจงเลือกนำข้อมูลเฉพาะสิ่งที่จำเป็นต้องแยกแยะได้มาใส่ก่อน เพื่อเพิ่มความถูกต้อง
- การวัดผลของแอปพลิเคชัน จะแบ่งออกเป็นสองส่วนคือ ความแม่นยําในการตรวจจับวัตถุ และความแม่นยําในการวัดระยะทางจากวัตถุถึงตัวกล้อง
สรุปการทดลอง
- จากการทดสอบการวัดระยะทางพบว่าโปรแกรมจะแสดงผลการวัดระยะทางได้อย่างแม่นยําในช่วง 10-15 เซนติเมตรหลังจากที่แอปพลิเคชันสามารถตรวจจับวัตถุได้ โดยระยะก่อนหรือหลังจากช่วง 10-15 เซนติเมตรนั้น ค่าความคาดเคลื่อนจะมีแนวโน้มที่เพิ่มมากขึ้น
- ค่าความคลาดเคลื่อนเฉลี่ยจะมีแนวโน้มที่น้อยลง เมื่อขนาดความกว้างของวัตถุมีค่าเพิ่มขึ้น
- ตัวแอปพลิเคชันสามารถตรวจจับและระบุวัตถุได้ดีในระดับหนึ่ง
- ตัวแอปพลิเคชันสามารถส่งข้อมูลไปยังเซิร์ฟเวอร์ได้ในระบบ TCP/IP
ข้อเสนอแนะ
- ตัวแอปพลิเคชันตรวจจับวัตถุต่างชนิดด้วยความเร็วที่แตกต่างกัน
- การวัดระยะทางของตัวแอปพลิเคชันจะทํางานโดยมีค่าความคลาดเคลื่อนที่แตกต่างกันในสภาวะแสงที่แตกต่างกัน
- สามารถนําข้อมูลจากการวัดค่าความคลาดเคลื่อนไปสร้างโมเดลทางคณิตศาสตร์เพื่อไปปรับเทียบทําให้การทํางานของ mobile robot มีความแม่นยํามากขึ้น