ข้อผิดพลาดในการสร้างปริมาณเสียงรบกวนอย่างไร


11

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


มันผิดเพี้ยนไปมากกว่าเสียงรบกวน ขึ้นอยู่กับสัญญาณและไม่สุ่ม
endolith

endolith ฉันคิดว่าสิ่งที่ฉันไม่เข้าใจคือข้อผิดพลาดส่งผลให้เกิดความถี่อย่างไร
Jan Deinhard

2
การบิดเบือนจะสร้างความถี่เพิ่มเติมเสมอ หากคุณบิดเบือนคลื่นไซน์มันจะกลายเป็นรูปแบบคลื่นซ้ำ ๆ รูปแบบคลื่นซ้ำ ๆ นอกเหนือจากคลื่นไซน์นั้นประกอบด้วยหลายความถี่
endolith

1
ดังที่ @endolith ได้กล่าวไว้ให้เราคิดว่าคุณมี ADC ที่แย่มาก ๆ เช่นคุณให้น้ำเสียงบริสุทธิ์ แต่รับสัญญาณที่ดูเหมือนไซน์ แต่มีขั้นตอนใหญ่ (ตอนนี้สัญญาณของคุณดูเหมือนบันไดที่ขึ้นและลงด้วยไซน์ดั้งเดิม) ตอนนี้คุณรู้แล้วว่าสัญชาตญาณประกอบด้วยขั้นตอนหลายความถี่ นี่คือวิธีที่ ADC จะเพิ่มความถี่ตามที่คุณขอ มันคือการดำเนินการที่ไม่ใช่เชิงเส้น btw หากเป็นแบบเส้นตรงคุณไม่สามารถสร้างความถี่ใหม่ได้
Spacey

ข้อสังเกตอื่น: การตีความที่ดีได้รับจาก Yannis Tsividis ใน ICASSP 2004: การนับจำนวนเป็นความไม่เชิงเส้นอย่างหนักและสร้าง "ฮาร์มอนิกจำนวนไม่ จำกัด " กระบวนการสุ่มตัวอย่างพับทั้งหมดของพวกเขาลง สำหรับสัญญาณที่มีความซับซ้อนเพียงพอสัญญาณ "ฮาร์โมนิกส์ที่ลดลง" เหล่านี้ดูเหมือนพื้นเสียงสีขาว
divB

คำตอบ:


6

สมมติว่าฉันมีสัญญาณ multitone (ผู้ให้บริการหกที่± 1/1000, ± 2/1000 และ± 7/1000 ของความถี่การสุ่มตัวอย่าง)

x = (1:1000);
wave = sin(x/1000*2*pi) + sin(x/1000*2*pi*2) + sin(x/1000*2*pi*7);

ซึ่งวัดปริมาณโดยใช้ ADC ขนาด 14 บิต

wave_quant = round(wave * 16384) / 16384;

ความแตกต่าง

wave_qnoise = wave_quant - wave;

ให้ข้อผิดพลาดเชิงปริมาณ

Quantization Noise ตามเวลา

สเปกตรัมที่สอดคล้องกัน

wave_qnoise_freq = mag(fftshift(fft(wave_qnoise)) / sqrt(1000));

เสียงรบกวนเชิงปริมาณโดยความถี่

แสดงชั้นสัญญาณรบกวนที่สร้างขึ้นทั่วทั้งสเปกตรัม

นี่อนุมานว่าข้อผิดพลาดเชิงปริมาณไม่ได้ทำให้เกิดอคติ ถ้า ADC เลือกค่าที่ต่ำกว่าเสมอ

wave_quant_biased = floor(wave * 16384) / 16384;

เราได้รับข้อผิดพลาดเชิงปริมาณที่ไม่อยู่กึ่งกลางรอบศูนย์อีกต่อไป

wave_qnoise_biased = wave_quant_biased - wave;

ข้อผิดพลาดเชิงปริมาณด้วยอคติตามเวลา

ซึ่งมี spike ที่แน่นอนใน FFT ใน DC bin

wave_qnoise_biased_freq = mag(fftshift(fft(wave_qnoise_biased)) / sqrt(1000));

ข้อผิดพลาดเชิงปริมาณด้วยอคติตามความถี่

สิ่งนี้กลายเป็นปัญหาที่แท้จริงด้วยเช่นการปรับควอดสี่เหลี่ยมจัตุรัสแอมพลิจูดที่ DC ตรงข้ามในสัญญาณ demodulated สอดคล้องกับคลื่นไซน์ที่ความถี่ demodulation


ขอบคุณมากสำหรับความช่วยเหลือของคุณ วิธีนี้ฉันได้สำรวจการบิดเบือนที่เกี่ยวข้องกับการหาปริมาณ

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

9

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

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


ฉันคิดว่าฉันเข้าใจว่าการหาปริมาณทำให้เกิดข้อผิดพลาดเองได้อย่างไร ปริศนาอะไรที่ทำให้ฉันสร้างความถี่ได้ ความเข้าใจของฉันคือ: "สัญญาณที่ไม่ต้องการ" หมายถึงความถี่ที่ไม่ต้องการ สมมติว่าฉันสุ่มตัวอย่างสัญญาณไซน์บริสุทธิ์ จากนั้นข้อผิดพลาดเชิงปริมาณแนะนำ "overtones" ฉันคิดว่าเสียงหวือหวานั้นมาจากรูปร่าง "ขั้นบันได" ของสัญญาณตัวอย่าง ถูกต้องหรือไม่
Jan Deinhard

1
@FairDinkumThinkum: ใช่ถ้าคุณบิดเบือนคลื่นไซน์บริสุทธิ์คุณจะได้ความเพี้ยนฮาร์มอนิกซึ่งสร้างความถี่ใหม่ที่ทวีคูณของความถี่ของคลื่นไซน์ en.wikipedia.org/wiki/Distortion#Harmonic_distortion
endolith

มันถูกต้องหรือไม่ที่จะบอกว่า "สัญญาณรบกวน" เป็นเพียงส่วนที่เพิ่มเข้ามาระหว่างสัญญาณต้นทางและสัญญาณขาออกเนื่องจากการหาปริมาณ
Andy Ray

@AndyRay โดยทั่วไปใช่ ในบางแอปพลิเคชันเรายังสนใจในสิ่งเพิ่มเติมเช่นเมื่อเราทำงานกับสัญญาณ GPS ที่จางมากและต้องสร้างใหม่ทางคณิตศาสตร์เราจำเป็นต้องรู้ว่าเสียงมีคุณสมบัติใด ๆ ที่จะทำให้อัลกอริทึมผิดพลาดหรือไม่ DC offset หรือ subharmonics ของความถี่การสุ่มตัวอย่าง
Simon Richter

3

หากต้องการขยายสิ่งที่ pichenettes พูดให้พิจารณาว่าคุณมีสัญญาณเสียงที่ถูกแปลงเป็นดิจิทัลโดยตัวแปลง D-to-A ที่มีความละเอียดเพียง 0.01 โวลต์ หากในบางช่วงเวลาทันทีสัญญาณเสียงจะอยู่ที่ 7.3269 โวลต์ซึ่งจะถูกปัดเศษเป็น 7.33 โวลต์หรือตัดเป็น 7.32 โวลต์ (ขึ้นอยู่กับการออกแบบของตัวแปลง) ในกรณีแรกที่คุณเพิ่ม "เสียงรบกวน" ที่ 7.33-7.3269 โวลต์หรือ 0.0031 โวลต์ ในกรณีที่สองคุณได้เพิ่ม "สัญญาณรบกวน" ที่ 7.32-7.3269 โวลต์หรือ -0.0069 โวลต์

แน่นอนว่ามีสัญญาณรบกวนเพิ่มเติมเนื่องจากความจริงที่ว่าตัวแปลงนั้นไม่แม่นยำอย่างแน่นอนและอาจมีความแม่นยำเทียบเท่ากับความแม่นยำของมัน


0

นี่คือคำอธิบายพื้นฐานเพิ่มเติมเพื่อให้ได้ประเด็นพื้นฐาน

  1. เอื้อมมือไปหยิบกระเป๋า iPhone ของคุณ
  2. เปิดแอป Health -> กิจกรรมการออกกำลังกาย -> ขั้นตอนที่เดิน (เปิดตามค่าเริ่มต้น)
  3. เขียนจำนวนก้าวที่คุณเดินในแต่ละสิบวันที่ผ่านมา

ปัดเศษตัวเลขเหล่านั้นเป็นหลักพันแล้วโพสต์ที่นี่ ตอนนี้คนอื่น ๆ ที่นี่ต้องเดาหมายเลขเดิมของคุณตามสิ่งที่คุณโพสต์

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

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