Opencv Camshift With C++



Opencv Camshift With C++ 


Camshift เป็นหนึ่งฟังก์ชั่นที่อยู่ใน openCV ซึ่ง algorithm Camshift จะมีการติดตามวัตถุที่มีเม็ดสีในเฟรมวีดีโอ โดยเริ่มต้นเมื่อมีการรับรูปภาพที่เป็นข้อมูลดิบเข้ามาจะมีการเปลี่ยนรูปเป็นกราฟ histogram เพื่อดูการแจกแจงของสีที่จะใช้ในการตามรอยจุดสีของวัตถุต่อไป และหาจุดกึ่งกลางและขนาดของวัตถุที่เราสนใจ 
ขั้นตอนและวิธีการใช้ฟังก์ชั้น CamShift

-สร้างตั้วแปล cap(0) เพื่อเปิดและใช้งานเว็บแคม


-สร้าง infinity loop ทำการรับภาพจากกล้อง และแสดงผลด้วย imshow


-ตั้งค่า หน้าต่างให้มีการส่งข้อมูลไปยังฟังก์ชั้น Callback เพื่อทำการสร้างจุดที่ต้องการ มาร์ค


-ทำการ Mask จุดที่ต้องการ Track โดยการใช้ ฟังก์ชั้น Mouse Callback เพื่อลากและวางสี่เหลียมบริเวณที่ต้องการ Track 



- เมื่อมาร์คจุดเส็ดแล้วให้โปรแกรมส่งค่าที่ มาร์คและ ทำการ Image Processing เพื่อทำการ BackProjection เเละนำไปใส่ในฟังก์ชั้น CamShift




 - สร้างวงรีล้อมลอบจุดที่เป็นวัตถุ





ความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้

การจัดการภาพเบื่องต้นด้วย OpenCV

การสร้าง GUI ด้วย OpenCV และการวาดรูป