Disclaimer : ฉันโพสต์คำถามนี้ใน StackOverFlowแต่ได้เรียนรู้ว่ามันเหมาะกว่าที่นี่
ฉันเป็นคนใหม่ในการประมวลผลภาพดังนั้นฉันอยากถามคุณเกี่ยวกับการหาทางออกที่ดีที่สุดสำหรับปัญหาของฉันไม่ใช่ช่วยรหัส ฉันไม่สามารถนึกถึงความคิดที่ดี แต่อยากจะขอคำแนะนำจากคุณ
ฉันกำลังทำงานในโครงการที่ใช้ OpenCV ในการนับยานพาหนะจากไฟล์วิดีโอหรือกล้องถ่ายทอดสด คนอื่นที่ทำงานในโครงการดังกล่าวโดยทั่วไปติดตามวัตถุที่เคลื่อนไหวแล้วนับพวกเขา แต่แทนที่จะเป็นเช่นนั้นฉันต้องการทำงานกับมุมมองที่ต่างออกไป ขอให้ผู้ใช้ตั้งค่า ROI (ภูมิภาคที่สนใจ) ในหน้าต่างวิดีโอและทำงานเฉพาะในภูมิภาคนี้ (ด้วยเหตุผลบางอย่างเช่นไม่ต้องการจัดการกับทั้งเฟรมและเพิ่มประสิทธิภาพบางอย่าง) ดังที่แสดงด้านล่าง (ผู้ใช้สามารถตั้งค่า ROI มากกว่าหนึ่งและขอให้ผู้ใช้กำหนดความสูงของ ROI ประมาณสองเท่าของรถยนต์ปกติตามสัดส่วน)
ฉันได้ดำเนินการขั้นพื้นฐานไปแล้วบางอย่างเช่นการอัปเดตพื้นหลังตัวกรองสัณฐานวิทยาการทำซ้ำและการทำให้วัตถุเคลื่อนที่เป็นภาพไบนารีอย่างเช่นด้านล่าง
หลังจากทำเสร็จแล้วฉันพยายามนับพิกเซลสีขาวของเฟรมด้านหน้าเบื้องหน้าสุดท้ายและประเมินว่าเป็นรถยนต์หรือไม่โดยตรวจสอบจำนวนพิกเซลสีขาวทั้งหมด . เพื่ออธิบายฉันวาดกราฟิกตัวอย่าง:
อย่างที่คุณเห็นมันเป็นเรื่องง่ายที่จะคำนวณพิกเซลสีขาวและตรวจสอบว่ามันเป็นเส้นโค้งตามเวลาและพิจารณาว่ารถยนต์หรือเสียงรบกวนหรือไม่
ปัญหา
ฉันค่อนข้างประสบความสำเร็จจนกระทั่งรถสองคันผ่าน ROI ของฉันพร้อมกัน อัลกอริทึมของฉันนับพวกเขาอย่างไม่ถูกต้องเป็นรถยนต์คันเดียว ฉันลองแนวทางที่แตกต่างกันสำหรับปัญหานี้และคล้ายกับสิ่งนี้เช่นรถถังยาว แต่ฉันไม่พบวิธีแก้ปัญหาที่น่าพอใจ
คำถาม
เป็นไปได้หรือไม่ที่จะจัดการกับภารกิจนี้ด้วยวิธีการนับจำนวนพิกเซลนี้ ถ้าไม่คุณแนะนำอะไร