มันเป็นธรรมเนียมที่จะต้องแก้ไขเพื่อให้ได้หน้าต่าง


9

พิจารณาวิธีการกำหนดหน้าต่าง Hanning:

0.5 - 0.5 * cos(n*2*Pi/(N-1))

โดยคำจำกัดความนี้จะได้รับ 0.5 ซึ่งเป็นเพียงค่าเฉลี่ยของค่าสัมประสิทธิ์ ในทางตรงกันข้าม Flattop windows ตามที่นิยามไว้มีความเป็นอันหนึ่งอันเดียวกันโดยการออกแบบ

ดูเหมือนว่าจะเหมาะสมในการปรับขนาดหน้าต่าง Hanning ด้วย 2 เท่า แต่ฉันไม่เคยเห็นสิ่งนี้มาพูดถึงทุกที่ ดูเหมือนว่าทุกหน้าต่างควรได้รับการปรับสัดส่วนเพื่อความเป็นอันหนึ่งอันเดียวกัน

ในทางปฏิบัติแล้ว windows จะได้รับการแก้ไขเพื่อประโยชน์ของพวกเขาหรือไม่? ถ้าไม่ทำไมล่ะ

แก้ไข:

เนื่องจากไม่มีใครให้คำตอบฉันจะอธิบายรายละเอียดเล็กน้อย

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

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

Windows ยังใช้กันอย่างแพร่หลายสำหรับการออกแบบตัวกรอง FIR ในแอปพลิเคชั่นนี้ควรมีความชัดเจนว่าสัญญาณที่จะถูกปล่อยออกมาเป็นสัญญาณชีพจร sinc มีพลังงานส่วนใหญ่อยู่ตรงกลางของหน้าต่าง ดังนั้นหน้าต่างทำเพียงเล็กน้อยเพื่อลดพลังงานทั้งหมดของ sinc pulse ดังนั้นเมื่อใช้สำหรับการออกแบบตัวกรองเราไม่ต้องการได้รับความเป็นเอกภาพ แต่เป็นแอมพลิจูดที่มีความเป็นเอกภาพค่อนข้างสูงเช่นเดียวกับที่ windows ส่วนใหญ่มียกเว้น flattops สิ่งอื่นที่ไม่ใช่แอมพลิจูดพีคของความสามัคคีจะส่งผลต่อการได้รับของฟิลเตอร์ FIR ที่เกิดขึ้น


1
ขึ้นอยู่กับแอพพลิเคชั่นและวิธีการใช้หน้าต่าง (เช่นการคูณหรือการบิด) การปรับสภาพทั่วไปบางประเภทจะถูกปรับให้เป็นเอกภาพ DC gain หรือพลังงานต่อหน่วย
Jason R

ฉันหมายถึงการสมัครผ่านการคูณ
user5108_Dan

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

คุณเรียกสิ่งที่ได้รับจากหน้าต่าง?
Yves Daoust

2
กำไรของหน้าต่างดังที่ฉันเข้าใจคือค่าเฉลี่ยของสัมประสิทธิ์ (เช่น Sum / N) ต่อไปนี้เป็นเอกสารสองฉบับที่ใช้คำจำกัดความนี้Fred Harris (ดูตารางที่ 1 สำหรับการเปรียบเทียบการเพิ่มหน้าต่าง) และMax Planck Inst (ดูคำจำกัดความและการใช้ S1) คำจำกัดความนี้ดูเหมือนชัดเจนเพียงพอหากคุณเพียงแค่ดูผลของการใช้หน้าต่างกับคลื่นไซน์บริสุทธิ์
user5108_Dan

คำตอบ:


3

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

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

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

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


ขอบคุณ. นี่คือสิ่งที่ฉันคิดว่าควรเป็นกรณี แต่ไม่เคยเห็นมันระบุไว้ที่ใดก็ได้
user5108_Dan

1

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

n=+w[n]=1

หรือ

+w(t) dt=1

คุณกำลังบอกว่าการเพิ่มของหน้าต่างเป็นฟังก์ชันของความถี่หรือไม่? ฉันคำนวณหน้าต่างได้รับเป็นผลรวมของ coeff หารด้วย N, ค่าเฉลี่ย ฉันต้องการให้สิ่งนี้เป็น 1 ไม่ใช่ผลรวมตามที่คุณแสดง ดังนั้นปัจจัยการแก้ไขอัตราขยายสำหรับ Hanning คือ 2 เมื่อฉันใช้ windows ที่ได้รับการแก้ไขด้วย fft ฉันจะได้รับค่าแอมพลิจูดที่ถูกต้อง ซึ่งจะพูด; หน้าต่างทั้งหมดที่ฉันทดสอบให้แอมพลิจูดแบบเดียวกันสำหรับองค์ประกอบสเปกตรัมแต่ละค่าและพวกมันทั้งหมดเห็นด้วยกับค่า FFT ที่ไม่มีหน้าต่าง ถ้าฉันใช้ windows โดยไม่ได้รับการแก้ไขพวกเขาทั้งหมดให้ผลลัพธ์ที่แตกต่างกันและมีเพียง flattop เท่านั้นที่ให้ค่าแอมพลิจูดที่ถูกต้อง
user5108_Dan

คุณกำลังบอกว่าการเพิ่มของหน้าต่างเป็นฟังก์ชันของความถี่หรือไม่? ดีเฉพาะในกรณีที่
W(f)=w(t)ej2πftdt
ไม่คงที่ด้วย f หรือถ้า
W(ejω)=n=w[n]ejωn
ไม่คงที่ค่ะ ω. แต่ถ้ามีการเปลี่ยนแปลงอย่างใดอย่างหนึ่งเหล่านี้เมื่อมีการเปลี่ยนแปลงความถี่ตามนิยามแล้วกำไรของหน้าต่างคือฟังก์ชันของความถี่ การแก้ไขการรับผลตอบแทนสำหรับหน้าต่าง Hann อาจเป็นได้2เพราะถ้าไม่มีมันกำไรที่ DCคือ12.
robert bristow-johnson

วิธีที่ฉันเห็นมันกำไรของหน้าต่าง Hann คือ 1/2 ทุกความถี่ไม่ใช่แค่ DC กล่าวอีกนัยหนึ่งทุกองค์ประกอบสเปกตรัมใน fft คือ 6 dB ต่ำกว่าที่ควรจะเป็น เมื่อฉันใช้หน้าต่าง Flattop ที่มีความเป็นเอกภาพส่วนประกอบของสเปกตรัมทุกอันอยู่ในระดับที่ถูกต้อง ฉันต้องทำสิ่งที่ผิดอย่างสมบูรณ์
user5108_Dan

ไม่รู้ว่าคุณจะเห็นว่าเป็นอย่างนั้น คุณใช้หน้าต่าง Hann อย่างไร คุณใช้สัญญาณเดิมที่ตำแหน่งใดและคุณทำอะไรกับข้อมูลที่มีหน้าต่าง
robert bristow-johnson

ฉันสร้างสัญญาณหลายโทนจากนั้นให้หน้าต่างแบบนี้โดยที่ N = 1024 sig (n) = 1 + sin (50 * n * 2 * Pi / N) + sin (75 * n * 2 * Pi / N) ชนะ (n) = 0.5 - 0.5 * cos (n * 2 * Pi / (N-1)) windowed_sig (n) = sig (n) * win (n) จากนั้นฉันใช้ fft ของ windowed_sig ผลลัพธ์ดูถูกต้อง เพียงว่าสัญญาณของหน้าต่างที่ปรากฏนั้นมีข้อผิดพลาด ข้อผิดพลาดคือ 6 dB สำหรับหน้าต่าง Hann ประมาณ 10 dB สำหรับ Gauss และ 0 dB สำหรับ flattop
user5108_Dan

0

ปัจจัยครึ่งปกติถึงความกว้างของหน่วย


สิ่งนี้ไม่ได้ให้คำตอบสำหรับคำถาม หากต้องการวิจารณ์หรือขอคำชี้แจงจากผู้แต่งโปรดแสดงความคิดเห็นใต้โพสต์ของพวกเขา
jojek

@jojek: ไม่จำเป็นต้องอธิบายอีกต่อไปนี่เป็นคำถามเบื้องต้น
Yves Daoust

ฉันเห็นด้วยกับ Yves ที่นี่: คำถามดูเหมือนประถม By this definition, it has a gain of 0.5และคำตอบนี้แน่นอนบ่งชี้เข้าใจผิดของคำสั่งถามฯ
Peter K.

@PeterK: ขอบคุณสำหรับการสนับสนุน ท้ายที่สุดฉันผิดที่จะตอบคำถามที่ไม่มีความหมาย: "การรับ" ของหน้าต่างไม่ได้ถูกกำหนดไว้
Yves Daoust

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