เหตุใดเราจึงใช้ตัวบอกคำสำคัญ


17

ฉันเพิ่งศึกษาเกี่ยวกับ SURF และฉันจะลงมือปฏิบัติ แต่ฉันก็ยังไม่เข้าใจว่าทำไมเราจึงใช้ตัวอธิบาย

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


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

@penelope คำถามของฉันเป็นเรื่องทั่วไปเกี่ยวกับ descriptors
ARG

3
ฉันหวังว่าคุณจะไม่รังเกียจที่จะทำให้คำถามของคุณเป็นเรื่องทั่วไปมากขึ้นก่อนที่จะตอบ
Penelope

คำตอบ:


22

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

ขึ้นอยู่กับอัลกอริธึมที่ใช้ในการแยก keypoint (SIFT, Harris corner, MSER) ​​คุณจะรู้ถึงลักษณะทั่วไปของ keypoint ที่แยกออกมา (เช่นพวกมันอยู่กึ่งกลางรอบ blobs, ขอบ, มุมที่โดดเด่น ... ) แต่คุณจะไม่รู้ว่าแตกต่างกันอย่างไร หรือหนึ่งประเด็นที่คล้ายกันคือการอื่น

ต่อไปนี้เป็นตัวอย่างง่ายๆสองตัวอย่างที่เฉพาะตำแหน่งและจุดสำคัญจะไม่ช่วยเรา:

  • หากคุณมีรูปภาพ A (ของหมีบนพื้นหลังสีขาว) และรูปภาพ B อื่นสำเนา A ที่แน่นอน แต่แปลมาสองสามพิกเซล: ประเด็นสำคัญที่แยกจะเหมือนกัน (ในส่วนเดียวกันของหมีนั้น) ภาพสองภาพเหล่านั้นควรได้รับการยอมรับเหมือนกันหรือคล้ายกัน

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

  • หากคุณมีภาพ A (สมมติว่าเป็นเป็ดในเวลานี้) และภาพอื่น B ​​เป็นภาพเดียวกับใน A ยกเว้นขนาดสองเท่า: ประเด็นสำคัญที่แยกออกมาจะเหมือนกัน (ส่วนเดียวกันของเป็ด) ภาพเหล่านั้นก็เหมือนกัน (คล้าย)

    แต่ขนาด (พื้นที่) จะแตกต่างกัน: จุดสำคัญทั้งหมดจากภาพ B จะเป็นสองเท่าของขนาดจากภาพ A

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

สิ่งสำคัญสำหรับ descriptors คือ:

  • ควรเป็นอิสระจากตำแหน่งสำคัญ

    หากแยกจุดสำคัญเดียวกันที่ตำแหน่งต่าง ๆ (เช่นเนื่องจากการแปล) ตัวบ่งชี้ควรเหมือนกัน

  • ควรมีความทนทานต่อการแปลงภาพ

    ตัวอย่างบางส่วนคือการเปลี่ยนแปลงของความคมชัด (เช่นภาพของสถานที่เดียวกันในช่วงวันที่มีแดดจัดและมีเมฆมาก) และการเปลี่ยนแปลงของมุมมอง (ภาพของอาคารจากกึ่งกลางขวาและกึ่งกลางซ้ายเรายังคงต้องการให้เป็นอาคารเดียวกัน) .

    แน่นอนว่าไม่มีผู้ให้คำอธิบายใดที่มีความแข็งแกร่งอย่างสมบูรณ์ต่อการเปลี่ยนแปลงทั้งหมด (หรือต่อการเปลี่ยนแปลงใด ๆ หากมีความแข็งแกร่งเช่นการเปลี่ยนแปลงมุมมองขนาดใหญ่)

    ตัวอธิบายที่แตกต่างกันได้รับการออกแบบให้มีความทนทานต่อการเปลี่ยนแปลงที่แตกต่างกันซึ่งบางครั้งตรงข้ามกับความเร็วที่ใช้ในการคำนวณ

  • พวกเขาควรมีขนาดอิสระ

    ตัวอธิบายควรคำนึงถึงบัญชี หากส่วน "โดดเด่น" ของหนึ่งจุดสำคัญคือเส้นแนวตั้งที่ 10px (ภายในพื้นที่วงกลมที่มีรัศมี 8px) และส่วนที่โดดเด่นของอีกเส้นแนวตั้งที่ 5px (ภายในพื้นที่วงกลมที่มีรัศมี 4px) - จุดสำคัญเหล่านี้ควรได้รับการกำหนดอธิบายที่คล้ายกัน

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

สำหรับการที่ซับซ้อนมากขึ้นการใช้ keypoints / อธิบายคุณควรจะดูที่คำถามนี้ - โดยเฉพาะอย่างยิ่ง "ระดับต่ำวิธีท้องถิ่น" ในคำตอบของฉันและ "กระเป๋าของคำว่า" วิธีการใน@Mauritsคำตอบ ลิงก์ที่ให้ไว้ในคำตอบเหล่านั้นก็มีประโยชน์เช่นกัน


คำตอบที่ดีที่สุดและคำอธิบายที่ดีการใช้คำว่าเหมือนกับคำอธิบายหรือไม่ ทั้งสองเหมือนกันหรือต่างกัน และความหมายของคำในการท่องคืออะไร?
ARG

1
คำว่า "คุณสมบัติ" เหมือนกับ "จุดสำคัญ" - เป็นจุดที่โดดเด่นในภาพ Descriptor เป็น "keypoint descriptor" หรือ "descriptor Feature" น่าเสียดายที่ฉันไม่ค่อยรู้เรื่อง SURF มากนักฉันจึงถามว่าคุณต้องการทราบเกี่ยวกับ descriptor โดยทั่วไปหรือเฉพาะเจาะจงเกี่ยวกับ SURF ฉันรู้ว่าสำหรับ SIFT การวางแนวนั้นสำคัญมาก
Penelope

การปฐมนิเทศไม่เฉพาะเจาะจงสำหรับ SURF, มันยังใช้ใน SIFT, ฉันแค่อยากรู้เกี่ยวกับมัน, มันคืออะไร
ARG

คุณคำนวณ "การวางแนวหลัก" ของจุดสำคัญตามการไล่ระดับสีท้องถิ่น จากนั้นทิศทางนั้นจะกลายเป็น "ขึ้น" สำหรับประเด็นสำคัญเมื่อคำนวณการไล่ระดับสีเพื่อให้เกิดความแปรปรวนแบบหมุนได้ สำหรับร่อนคุณมีคำอธิบายที่ดีในวิกิพีเดีย
Penelope

:) คำถามของฉันคือปฐมนิเทศคืออะไร? ไม่ได้อยู่บนร่อนหรือโต้คลื่น
ARG

2

ลองนึกถึงตัวอธิบายอุดมคติเพื่อทำความเข้าใจความคิด ตัวบ่งชี้อุดมคติคือฟังก์ชันจากพื้นที่พิกเซลไปยังพื้นที่อื่นเช่นวัตถุเดียวกันมีผลลัพธ์เดียวกันในขณะที่วัตถุต่าง ๆ มีผลลัพธ์ที่แตกต่างกัน

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

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

ดังนั้นตัวอธิบายของคุณจำเป็นต้องตรงกับวัตถุเดียวกัน

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