ฉันจะจำแนกสัญญาณที่วัดได้ที่ตำแหน่งต่าง ๆ โดยอัตโนมัติได้อย่างไร


10

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

ฉันสนใจที่จะจำแนกยอดเขาโดยอัตโนมัติ ด้วยสิ่งนี้ฉันหมายความว่าฉันกำลังมองหาอัลกอริทึมที่ "มอง" ที่สัญญาณไมโครโฟนสองตัวในพล็อตด้านล่างและ "จดจำ" จากตำแหน่งและรูปคลื่นที่มีสองเสียงหลักและรายงานตำแหน่งเวลาของพวกเขา:

sound 1: sample 17 upper plot, sample 19 lower plot,
sound 2: sample 40 upper plot, sample 38 lower plot

ในการทำเช่นนี้ฉันวางแผนที่จะทำการขยาย Chebyshev รอบจุดสูงสุดแต่ละจุดและใช้เวกเตอร์ของสัมประสิทธิ์ Chebyshev เป็นอินพุตไปยังอัลกอริธึมคลัสเตอร์ (k-mean?)

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

การประมาณค่อนข้างดี :-)

อย่างไรก็ตาม; ค่าสัมประสิทธิ์ Chebyshev สำหรับพล็อตด้านบนคือ:

Clu = -1.1834   85.4318  -39.1155  -33.6420   31.0028
Cru =-43.0547  -22.7024 -143.3113   11.1709    0.5416

และค่าสัมประสิทธิ์ Chebyshev สำหรับพล็อตล่างคือ:

Cll = 13.0926   16.6208  -75.6980  -28.9003    0.0337
Crl =-12.7664   59.0644  -73.2201  -50.2910   11.6775

ฉันต้องการเห็น Clu ~ = Cll และ Cru ~ = Crl แต่ดูเหมือนจะไม่เป็นเช่นนี้ :-(

อาจมีพื้นฐานอีกมุมมองที่เหมาะกว่าในกรณีนี้หรือไม่

คำแนะนำเกี่ยวกับวิธีดำเนินการต่อ (ฉันใช้ Matlab)?

ขอบคุณล่วงหน้าสำหรับคำตอบ!


1
ดูเหมือนว่าคุณกำลังตั้งสมมติฐานว่า "รูปร่าง" ของจุดสูงสุดโดยเนื้อแท้เมื่อแสดงในปริภูมิเวกเตอร์ของสัมประสิทธิ์พหุนาม Chebyshev อย่างต่อเนื่อง (เช่นการเปลี่ยนแปลงเล็กน้อยในรูปร่างของส่วนหนึ่งของยอดเขาจะทำให้เกิดการเปลี่ยนแปลงเล็กน้อย ในค่าสัมประสิทธิ์) คุณมีเหตุผลที่จะเชื่อในกรณีนี้หรือไม่? ดูเหมือนว่าคุณได้เลือกเครื่องมือของคุณโดยไม่ทำให้แน่ใจว่าจะแก้ปัญหาได้
Jason R

เพื่อให้ชัดเจนในลักษณะใดที่คุณพยายามจะ "จำแนก" ยอดเขา คุณกำลังพยายามเชื่อมโยงการวัดจากเซ็นเซอร์ต่าง ๆ ของคุณที่สอดคล้องกับยอดเขาที่เหมือนกันหรือไม่? คุณมีวิธีการอื่นที่คุณสามารถวัดการหน่วงเวลาสัมพัทธ์ก่อนแล้วจึงใช้ข้อมูลนั้นเพื่อการจำแนกประเภท
Jason R

สวัสดีเจสันอาร์ฉันได้อัปเดตคำถามของฉันเพื่อให้ชัดเจนขึ้น
Andy

จริง ๆ แล้วฉันกำลังพยายามทำซ้ำขั้นตอนในกระดาษ "การตีความโครงสร้างอัตโนมัติผ่านการจำแนกประเภทของขอบฟ้าแผ่นดินไหว" (Borgos et al) ฉันพยายามอธิบายปัญหาในแง่ทั่วไปมากขึ้น
Andy

@Andy คุณกรุณาอธิบายว่า co-efficients เหล่านั้นสอดคล้องกับเส้นสีแดงที่แสดงที่นี่ได้อย่างไร? พวกเขาดูเหมือนจะไม่สัมพันธ์ ...
สเปซีย์

คำตอบ:


2

Yผม[n]

Yผม[n]=ชั่วโมงผม[n]* * * *x[n]
ชั่วโมงผม[n]คือการตอบสนองแบบแรงกระตุ้นของฟังก์ชั่นการถ่ายโอนจากต้นทางไปยังไมโครโฟน "i" ฟังก์ชั่นการถ่ายโอนเหล่านี้มีการตอบสนองแอมพลิจูดและเฟสที่แตกต่างกัน หากแตกต่างกันพอสัญญาณไมโครโฟนแต่ละตัวก็จะแตกต่างกันเช่นกันและไม่มีเหตุผลที่จะเชื่อว่ายอดเขาจะปรากฏขึ้นจริง ณ จุดเดียวกัน ในสภาพแวดล้อมทางเสียงส่วนใหญ่พวกเขาจะ "แตกต่าง" ถ้าไมโครโฟนมีความยาวคลื่นมากกว่าหนึ่งในสี่สำหรับความถี่ที่น่าสนใจ

หากคุณสามารถวัดฟังก์ชั่นการถ่ายโอนคุณสามารถกรองสัญญาณไมค์แต่ละตัวด้วยค่าผกผันของฟังก์ชั่นการถ่ายโอนนั้น สิ่งนี้จะทำให้สัญญาณไมค์คล้ายกันมากขึ้นและลดผลกระทบของการกรอง

อีกทางเลือกหนึ่งคือการรวมสัญญาณ mic ทั้งหมดลงใน beamformer ที่ปรับการเลือกจากแหล่งให้เหมาะสม แต่จะปฏิเสธทุกอย่างอื่น สิ่งนี้ควรให้สัญญาณแหล่งที่มารุ่น "สะอาด"

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