Wednesday, April 14, 2010

Mahalanobis Distance

สงสัยเรื่อง mahalanobis distance ที่เห็นในฟังก์ชันของ OpenCV อ่านๆ ตอนหลังพบคำอธิบายที่ง่ายดี สรุปสั้นๆ คือระยะหว่างสองจุดในระนาบ N มิติ ใดๆ ที่ระยะห่างระหว่างแต่ละแกนถูก normalize แล้ว(คล้ายระยะห่างของ z score) ลองดูภาพประกอบดีกว่า
เครดิตภาพมาจากหนังสือ Learning OpenCV ของ OReilly นะครับ

จากจุดสามจุดในภาพนี่ ถ้าคำนวณระยะห่างตาม Euclidean distance แล้วผลที่ได้ออกมาก้อนล่างซ้ายจะอยู่ใกล้ก้อนบนมากกว่าก้อนขวา แต่มีคนเห็นว่าไม่แฟร์เพราะว่าแกน x ยาวกว่าตั้งเยอะ ต้องทำการ normalize ก่อนสิ ผลที่ได้จะเป็นดังรูปข้างขวา(ทำไม normalize แล้วสองแกนยังไม่เท่ากันนะ) สรุปคือถ้าวัดตาม mahalanobis distance แล้วจุดล่างซ้ายจะอยู่ใกล้จุดขวามากกว่าจุดบน

No comments:

Post a Comment