การพัฒนาแอพพลิเคชัน Computer Vision บน Android ร่วมกับ OpenCV (Open Comupter Vision) การติดตั้งโปรเจ็คของ eClipse ร่วมกับ OpenCV 3 ทดสอบ Face Detection
ทฤษฎีของ Computer Vision หรือ ระบบการมองภาพของคอมพิวเตอร์เป็นการประยุกต์ให้คอมพิวเตอร์สามารถมองภาพนิ่ง ภาพเคลื่อนไหว วีดีโอ แล้วเข้าใจว่าสิ่งที่มองนั้นคืออะไร แบบที่คนเรามองเห็นสิ่งต่างๆ รอบตัวด้วยดวงตาทั้งสอง และทำการ จดจำ แยกแยะ เพื่อทำความเข้าใจบริบทของสิ่งต่างๆ ที่เรามองได้ด้วยการประมวลผลำของสมองของเรา
ระบบคอมพิวเตอร์ในปัจจุบันก็เช่นกัน โดยเฉพาะส่วนของสมองกลอุปมาว่าดวงตาของระบบคอมพิวเตอร์ก็คือกล้องที่เครื่องอุปกรณ์ ในตัวอย่างนี้เป็นสมาร์ทโฟน Android ซึ่งทำหน้าที่ในการรับภาพเข้ามาให้สมอง นั่นก็คือหน่วยประมวลผล ซึ่งก็คือคอมพิวเตอร์ทำการวิเคราะห์ และแยกแยะ เพื่อนำไปใช้ประโยชน์ต่อๆไป
OpenCV หรือ Open Computer Vision ตัวหนึ่งในรูปแบบของ Library ในภาษา C++ และ Python ที่ใช้ในการประมวลผลสร้างงานเกี่ยวกับ ImageProcessing และ Computer Vision พัฒนาโดย Intel ซึ่งได้เปิดเป็น OpenSource ที่ใช้งานได้ทั้งแพลตฟอร์ม PC, Linux, Android, Python เป็นหลัก และเป็น Library ของ Computer Vision ตัวหนึ่งที่ได้รับความนิยมมาก ซึ่งเราจะใช้เป็นตัวหลักในการพัฒนาร่วมกับ Android ครับ
บทเรียนนี้จะเป็นการ แนะนำการติดตั้ง OpenCV เวอร์ชัน 3.0.0 ร่วมกับ eclipse ครับ
ก่อนอื่นไปดาวน์โหลด Library ก่อนที่ http://opencv.org/downloads.html
แตกไฟล์แล้วางไว้ที่ไหนก็ได้ที่เราจะไม่เผลอไปลบมัน
ตัว OpenCV บน Android นั้นต้องใช้ NDK ของ android ในการติดตั้งดังนั้นต้องไปดาวน์โหลดตัว NDK มาเพิ่มใช้งานคู่กับ SDK ด้วยครับที่
https://developer.android.com/ndk/index.html
เปิด eclipse ขึ้นมาครับ
ทำการคลิกที่ Package Explorer แล้วคลิกขวา Import ตัว OpenCV มาไว้ใน Project
เลือก Path ไปที่ OpenCV ที่เราดาวน์โหลดมาครับ
ใช้สมาธิ อดทนและใจเย็นๆ จนกว่า Project จะ Compile สมบูรณ์ (นั่งรอไป ไม่นานมากหรอก)
ในเวอร์ชัน 2 ของ OpenCV มักจะไม่มีปัญหาจะสามารถ Run ผ่าน โดยเมื่อเอา APK ลงเครื่องเราก็ไปดาวน์โหลด OpenCV Manager ได้ผ่าน Google Play Store ครับ แต่ Version 3.0.0 นั้นไม่ใช่ มันจะมีปัญหาที่ Face Detection และ Camera Control เป็น Error ปรากฏอยู่
วิธีแก้
คลิกขวาที่ face detection และ camera control ครับ เลือก Properties
แล้วเห็นแถบขวาให้เลือก C/C++ Build เลือก Environment ทำการ Add ตัว NDK เข้าไปครับ ให้เราไปติดตั้ง NDK ก่อน (นานเหมือนกัน)
จำ Path ไว้ เพื่อเอามาใส่ใน Environment ครับ โดยเราตั้งชื่อว่า “NDKROOT” ให้ใส่ Value เป็น Path ของเราไปเลยครับ
กด OK มันจะทำการ Build เพื่อซ่อมส่วนที่ Error ออกไปก่อน
เช่นกันครับ OpenCV Manager นั้นเราต้องไปที่ Folder ของ OpenCv ที่เราดาวน์โหลดมาหาโฟลเดอร์ apk แล้วดูว่า เครื่องสมาร์ทโฟนของเราใช้รุ่นไหนให้ติดตั้ง apk ที่ตรงรุ่นของเราลงไปในเครื่องสมาร์ทโฟนผ่านสาย USB ก่อนเลยครับ
ทำการติดตั้งซะ OpenCV Manager V.3.0.0
เสร็จเรียบร้อย ก็ให้ทำการ Run ตัว แอพพลิเคชัน Face detection ลงไปในเครื่อง device เราผ่าน USB ครับ
เมื่อติดตั้งแล้วก็จะใช้งานได้
ทดสอบกันหน่อยดีกว่าเกี่ยวกับความแม่นยำในการจับภาพใบหน้าคน
เราสามารถปรับ ขนาดของ Face Detect ได้เป็น % นะครับก็ลองทดสอบกันดู หวังว่าบทความนี้คงช่วยหลายๆ คนที่กำลังมีปัญหาเรื่อง Version 3.0.0. ของ OpenCV Manager บน Android อยู่นะครับ