จำเป็นต้องมีสูตรการบีบอัดสูงสุด / เสียงการบีบอัด


9

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

สูตรที่หยาบมากของฉันคือ:

factor = (10 * average / level) + exp(-sqrt(0.1 * level / average))

ไหนระดับคือระดับเสียงทันทีเฉลี่ยเป็นประวัติศาสตร์เฉลี่ยระดับเสียงและปัจจัยที่เป็นตัวคูณที่ใช้ในการผลิต ( "ปรับ" ระดับปัจจัยครั้งระดับ )

นอกจากนี้ตัวคูณนี้จะถูกนำไปใช้เฉพาะในกรณีที่คำนวณค่าน้อยกว่า 1 มิฉะนั้นระดับจะไม่ได้รับการปรับ

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

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

ดังนั้นใครสามารถแนะนำสิ่งที่ดีกว่า (ดูเหมือนว่าพฤติกรรมแบบซีมโทติคนั้นสร้างได้ง่ายเมื่อคุณไม่ต้องการ แต่ยากเมื่อคุณทำ)


คำตอบ:


9

ปัญหาสองข้อที่นี่: วิธีการประมาณการระดับที่เชื่อถือได้และวิธีบีบอัดข้อมูล

  • ใช้สถิติที่แข็งแกร่งกับข้อมูลดั้งเดิม (ไม่ จำกัด ยอดสูงสุด) เช่นค่ามัธยฐานหรือปริมาณแทนที่จะใช้ค่าเฉลี่ยเพื่อให้การตรวจจับ "ระดับทั่วไป" ของคุณแข็งแกร่งต่อค่าผิดปกติ
  • k×tanh(xk)ทำงานได้ดีเหมือนสูตรการบีบอัดและเป็นจริงสิ่งที่เกิดขึ้นในวงจรเสียง (ใช้ OTA) ในการรับการบีบอัดแบบปรับตัวที่รักษาพลวัตของสัญญาณดั้งเดิมและเพียงแค่ลบทรานเซสเซอร์ให้ k ติดตามระดับ "เฉลี่ย" ที่ราบรื่นC

ตัวอย่าง

  • สีน้ำเงิน: สัญญาณดั้งเดิม
  • สีเขียว: 2 x ค่ามัธยฐานของค่าสัมบูรณ์เหนือหน้าต่างบานเลื่อนเป็นการตรวจจับ "ระดับทั่วไป"
  • แดง: การบีบอัด tanh (สูตรที่ให้ไว้ด้านบนโดยมี k เท่ากับระดับที่พล็อตเป็นสีเขียว)

ขอบคุณที่ดูมีแนวโน้ม ฉันจะเสียบมันและดูว่ามันจะเป็นอย่างไร
Daniel R Hicks

1
ฉันลองแล้วดูเหมือนว่าจะทำงานได้ดี (หลังจากตรวจสอบลายนิ้วมือสองครั้ง) ปัญหาเดียวของฉันคือมันไม่ปรากฏว่ามีวิธีใดที่จะปรับความคมชัดของ "หัวเข่า" โดยไม่ทำให้เล็ดลอดระดับคลิปหรืออะไรก็ตาม
Daniel R Hicks

ทำไม "ค่ามัธยฐานเคลื่อนที่" ดีกว่า "ค่าเฉลี่ยเคลื่อนที่"? ฉันอ่านในหลาย ๆ สถานที่ซึ่งมีความอ่อนไหวต่อค่าผิดปกติน้อยกว่า แต่ฉันไม่สามารถเห็นนี้มีข้อมูลจริง มีความคิดเห็นเกี่ยวกับคำถามนี้ไหม?
Basj
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.