ความเข้าใจพื้นฐานเกี่ยวกับไบนารี (“ BRIEF”)


14

ตัวอธิบายในอัลกอริทึม BRIEFจับคู่กันอย่างไร

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

พวกเขาเขียนว่าพวกเขาเปรียบเทียบตัวบอกรายละเอียดโดยใช้ระยะทาง Hamming แต่ค่าคงที่กับการเปลี่ยนแปลงของแสงขนาดและอื่น ๆ เป็นอย่างไร

คำตอบ:


15

ก่อนอื่นไม่มีสิ่งเช่น 'แม่แบบ' ในบทความนี้ - คำว่า 'แม่แบบ' มีความหมายแตกต่างกันใน Computer Vision

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

สิ่งสำคัญอันดับแรกคือการตรวจจับ; ในขั้นตอนนี้คุณต้องการตรวจจับจุดที่น่าสนใจหรือจุดสำคัญและนั่นหมายความว่าคุณต้องการเลือกจุดท้องถิ่น (โดยทั่วไปเป็นหย่อมเล็ก ๆ ) ที่คุณคิดว่าน่าสนใจในภาพมีหลายวิธีที่จะทำเช่นนั้น กระดาษนี้ไม่ได้มีส่วนร่วมในพื้นที่นี้ อย่างไรก็ตามดูเหมือนว่าพวกเขาใช้เครื่องตรวจจับคุณสมบัติ SURF และจุดสำคัญ CenSurE (คุณสามารถค้นหาได้หากคุณต้องการทราบข้อมูลเพิ่มเติมเกี่ยวกับพวกเขาฉันจะไม่พูดถึงขั้นตอนนี้ยกเว้นว่าพวกเขาใช้คุณสมบัติเช่นการไล่ระดับสีเป็นต้นซึ่งหมายความว่า หากคุณมีภาพถ่ายเป็นไปได้ยากที่จุดที่อยู่กลางท้องฟ้าจะถูกเลือกเป็นจุดสนใจนั่นเป็นเพราะพิกเซลรอบจุดนั้นเป็นความเข้มเดียวกันทั้งหมดสิ่งที่ 'ยุ่ง' มักจะถูกเลือกให้เป็นจุดสนใจ (เช่นขอบโต๊ะ / สิ่งปลูกสร้าง / มุม)

หลังจากตรวจจับเสร็จแล้วรายละเอียดคุณสมบัติดังต่อไปนี้ คุณรู้ว่าจุดที่น่าสนใจในภาพและตอนนี้คุณต้องการที่จะอธิบายพวกเขา (โดยทั่วไปคุณต้องการที่จะอธิบายจุด / ปะรอบจุดที่น่าสนใจ) SIFT เป็นหนึ่งในคุณสมบัติที่ได้รับความนิยม ในบทความนี้พวกเขามาพร้อมกับใหม่ที่เรียกว่า BRIEF BRIEF ขึ้นอยู่กับการเปรียบเทียบดังนั้นสมมติว่าเรามีแพทช์ (50 พิกเซลคูณ 50 พิกเซล) เราเลือกสองจุดและเปรียบเทียบความเข้มของสองจุดถ้าจุดแรกใหญ่กว่าจุดที่สองเรากำหนดค่า ' 1 ', อื่น ๆ ' 0 ', เราทำอย่างนั้นสำหรับหลายคู่และท้ายด้วยสตริงของค่าบูลีน ตอนนี้คำถามใหญ่คือ 'คุณจะเลือกคู่คะแนนได้อย่างไร' ในบทความพวกเขาอธิบาย 5 วิธีคล้ายกันฉันจะอธิบายคำถามแรก สิ่งที่คุณทำคือคุณอย่างสม่ำเสมอ (ความน่าจะเป็นเท่ากัน) เลือกจุดจาก -S / 2 ถึง S / 2 ในตัวอย่างของเราเรากล่าวว่าขนาดของโปรแกรมแก้ไขคือ 50 ดังนั้นเราจึงเลือกจุดระหว่าง -25 ถึง 25 โดยสมมติว่าพิกัด 0,0 ตั้งอยู่ที่กึ่งกลางของโปรแกรมแก้ไข นี่คือตัวอย่าง;

เราต้องการเลือกคู่แรกแต่ละจุดประกอบด้วยพิกัด (X, Y) ดังนั้นเราจึงเลือกพิกัด X ของจุดแรกอย่างสม่ำเสมอจากนั้นพิกัด Y ของจุดแรกสมมติว่าเป็น (10, -1) ตอนนี้จุดที่สอง เราเลือกพิกัด X สำหรับจุดที่สองอย่างสม่ำเสมอและพิกัด Y สำหรับจุดที่สองสมมุติว่ามัน (-2,20) ตอนนี้เราได้รับค่าความเข้มสำหรับแต่ละจุดแล้วดูว่าจุดใดมีค่าความเข้มที่ใหญ่กว่า - ถ้าอันดับแรกมีขนาดใหญ่กว่าเราจะกำหนดค่าบูลีนแรกให้เป็น '1' หากไม่ใช่เราจะกำหนด '0' เราทำอย่างนั้นกับหลาย ๆ คู่และท้ายด้วยเวกเตอร์ของค่าบูลีน

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

ดังนั้นเราจึงทำเช่นนั้นสำหรับแต่ละจุดสนใจที่ตรวจจับโดยเครื่องตรวจจับ สำหรับแต่ละจุดสนใจเราจะได้เวกเตอร์ของค่าบูลีน


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

ในการเปรียบเทียบภาพทั้งสองเราพบว่าเพื่อนบ้านที่ใกล้ที่สุดของแต่ละเวกเตอร์จากภาพแรกกับภาพเวกเตอร์อื่นจากภาพที่สอง เราใช้ Hamming distance ซึ่งค่อนข้างเร็วตัวอย่างของ hamming distance

hammingDistance ((0, 1, 1), (0, 0, 0)) = 2

hammingDistance ((0, 1, 1), (0, 1, 1)) = 0

hammingDistance ((0, 1, 1), (1, 0, 0)) = 3

hammingDistance (0, 1, 1), (1, 1, 1)) = 1

โดยทั่วไปมีจำนวนจดหมายที่ไม่ถูกต้อง

หวังว่าจะช่วย


ขอบคุณมากฉันเข้าใจอัลกอริทึม แต่ฉันยังคงมีคำถามบางอย่างเกี่ยวกับเลียนแบบการเปลี่ยนแปลงมุมมองและการเปลี่ยนแปลงความสว่าง? สตริงบิตจะคล้ายกันหรือไม่ในกรณีที่มีการเปลี่ยนแปลงในความสว่างหรือในมุมมอง?
คติพจน์

หากจำนวนของการเปลี่ยนแปลงความสว่าง - เท่ากันสำหรับพิกเซลทั้งหมดใช่มันจะยังคงทำงานถ้ามันแตกต่างจากพิกเซลเป็นพิกเซล (ความสว่างพิกเซลบางเพิ่มขึ้นอื่น ๆ ลดลง) นั่นเป็นปัญหา Affinity ดูเหมือนว่าจะทำงานได้ดี (ขึ้นอยู่กับผลลัพธ์ของพวกเขา) แต่มันจะไปถึงจุดที่มันหยุดทำงาน (ในรูปที่ 3) พวกเขาแสดงให้เห็นว่า - คุณสามารถดาวน์โหลดภาพและดู Wall 1 | 2, Wall 1 | 3 สอดคล้องกับ) วิธีการของพวกเขาไม่ใช่การหมุนแบบคงที่ (ดูไม่ยากนัก) และพวกเขาพูดอย่างชัดเจนว่า
Roronoa Zoro

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