การดำเนินการประมวลผลภาพที่จำเป็นก่อนการจับคู่แม่แบบ


13

นี่อาจแสดงว่าฉันไม่ได้เข้าคลาสการประมวลผลภาพ

ฉันมีเทมเพลตนี้เพื่อจับคู่วัตถุในภาพ ตัวอย่างเช่นวัตถุจริงในภาพไม่ได้มีลักษณะเช่นนั้น แต่เป็นภาพที่สอง ฉันต้องใช้การดำเนินการใดเพื่อให้ภาพอย่างที่สองต้องพร้อมสำหรับการจับคู่แม่แบบ FYI ภาพที่สามแสดงให้เห็นถึงการจับคู่ที่เหมาะ

ในความคิดอื่นฉันพอดีแม่แบบกับภาพ นั่นคือฉันให้พิกัดสี่มุมในภาพเพื่อให้ตรงกับที่อยู่ในแม่แบบ จากนั้นมันจะคำนวณวิธีการให้พอดีกับแม่แบบกับพื้นที่

UPDATE: แก้ไขปัญหาแล้ว ขอบคุณคำตอบที่ฉันเลือกด้านล่าง ฉันประสบความสำเร็จในการจัดการที่จะใช้แม่แบบของฉันในภาพ ภาพสุดท้ายแสดงผลลัพธ์

ป้อนคำอธิบายรูปภาพที่นี่

ป้อนคำอธิบายรูปภาพที่นี่

ป้อนคำอธิบายรูปภาพที่นี่ ป้อนคำอธิบายรูปภาพที่นี่


คุณจะไม่จับคู่กริดสีขาวนั่นใช่ไหม? คุณต้องการจับคู่กริดที่มีสีสันจริงในภาพที่สองใช่ไหม?
endolith

@ endolith ฉันคิดว่าทั้งสองวิธีเป็นเรื่องปกติ
แทซองชิน

คุณสามารถแบ่งปันแนวคิดพื้นฐานของอัลกอริทึมของคุณได้หรือไม่? ฉันต้องทำเช่นเดียวกันสำหรับแผนภูมิ
Gilad

คำตอบ:


9

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

แก้ไขมุมมองการฉายภาพเมื่อทราบรูปร่าง

เป้าหมายสูงสุดของการประมวลผลล่วงหน้าคือการหามุมของสี่เหลี่ยมสีเทานั้นซึ่งเป็นพื้นหลังของแผนภูมิสี ฉันเริ่มต้นด้วยการนวดข้าวด้วยค่าคงที่ วรรณคดี / เว็บมีข้อมูลจำนวนมากเกี่ยวกับวิธีการกำหนดค่าใหม่เมื่อภาพมีแสงไม่สม่ำเสมอ แต่หากทำได้ให้ลองแก้ไขการตั้งค่าภาพเพื่อให้แสงค่อนข้างสม่ำเสมอ

กำหนดด้วยค่าคงที่

ฉันสันนิษฐานว่าแผนภูมิสีใช้หน้าจอส่วนใหญ่ค่อนข้างมากดังนั้นมันน่าจะเป็นพื้นที่ต่อเนื่องที่ใหญ่ที่สุดของภาพ มีฟังก์ชั่นการติดฉลากขาวดำหลายฟังก์ชั่น (MATLABs bwlabel, IPPs LabelMarkers, OpenCV มีไลบรารี่ภายนอก cvblob) ซึ่งจะให้ดัชนีของตัวเองในแต่ละพื้นที่เชื่อมต่อที่แตกต่างกัน หลังจากการติดฉลากคุณสามารถคำนวณพื้นที่ของส่วนประกอบที่เชื่อมต่อโดยใช้ฮิสโตแกรมจากนั้นเลือกส่วนประกอบที่มีพื้นที่มากที่สุด

ค้นหาหยดที่ใหญ่ที่สุด

เป็นความคิดที่ดีที่จะเติมองค์ประกอบเช่นส่วนประกอบที่ไม่มีรูซึ่งจะช่วยลดจำนวนพิกเซลขอบ

เติมเต็มหยด

ตอนนี้เราสามารถใช้ตัวหาการหาขอบ (ฉันใช้วิธีการไล่ระดับสี แต่คุณสามารถติดตามขอบด้วยการติดตามพิกเซลสีขาวที่เชื่อมต่อกับพิกเซลสีดำ) เพื่อรับพิกเซลที่เป็นของนักเรียนประจำ

ค้นหาขอบ

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

ตอนนี้เรามีมุมของแผนภูมิสีและเมื่อเรารู้ขนาดของแผนภูมิเราสามารถคำนวณเมทริกซ์การแปลง (homography, การฉายภาพระหว่างระนาบสองระนาบใช้การแปลงเชิงเส้นโดยตรง (DLT) เพื่อแก้ ) ระหว่างพิกัดมิลลิเมตรและ พิกัดพิกเซลHHH

x=HX

เมทริกซ์การแปลงนี้สามารถใช้ในการแปลงภาพต้นฉบับซึ่งแผนภูมิสีจะถูกถ่ายโดยตรงจากทิศทางของพื้นผิวปกติ

พอดีกับเส้นที่ขอบ

ดังที่เห็นได้ว่ามีการเบี่ยงเบนรัศมีเพียงอย่างเดียว เมื่อเราใช้การแปลงสำหรับการแปลงภาพ (การประมาณค่าสองมิติ) เราเลือกพิกัดการประมาณเช่นนั้นเพื่อให้เราทราบความละเอียดของภาพที่แม่นยำซึ่งหมายความว่าตอนนี้เรารู้เช่นขนาดตัวอักษรH

หากเรายังต้องการทำการจับคู่แม่แบบบางอย่างเราสามารถใช้วิธีการจับคู่แม่แบบที่เหมาะสม วิธีนี้ไม่จำเป็นต้องเป็นค่าคงที่การหมุน / สเกลเนื่องจากภาพได้รับการแก้ไขแล้ว

มุมมองที่ถูกต้อง


1

เริ่มต้นด้วยการตรวจจับขอบ จากนั้นใช้ Hough transform เพื่อตรวจจับเส้นตรง แล้วหาว่าเส้นไหนขนานกันและอันไหนควรตั้งฉาก จากนั้นประเมินการแปลงแบบ Projective เพื่อให้เส้นที่ควรตั้งฉากจริง ๆ คือตั้งฉาก

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.