ความเป็นมา:บ่อยครั้งที่ฉันทำงานการประมวลสัญญาณบางอย่างที่ต้องใช้ตัวกรองที่ไม่ซ้ำใคร ปกติจะอยู่ที่จุดนี้ผมไปที่ MATLAB และสร้างตัวกรองที่ไม่ซ้ำกันใหม่โดยใช้ ) firpm()
ฟังก์ชันMATLAB ใช้อัลกอริทึม Parks-McClellan ตอนนี้ฉันมีตัวกรองและใส่ตัวกรองลงในอาร์เรย์ฮาร์ดโค้ด แต่นี่คือปัญหาที่ฉันมีตัวกรอง hardcoded ซึ่งใช้ได้กับสถานการณ์เดียวเท่านั้น
ปัญหา:ตอนนี้ฉันสามารถแก้ปัญหาการประมวลผลสัญญาณของฉันได้สองทาง ... แต่สำหรับอัตราตัวอย่างเดี่ยวที่เฉพาะเจาะจงมากหรือสถานการณ์เฉพาะ
เป้าหมาย:ฉันต้องการที่จะสามารถที่จะเรียกจากรหัส C หรือบางส่วนภาษาอื่น ๆ และให้รหัสการประมวลผลสัญญาณของฉันทั่วไปมากขึ้น ฉันไม่พบการใช้โอเพ่นซอร์สของfirpm()
!
ฉันจะใช้งานโอเพ่นซอร์สของอัลกอริทึมการออกแบบตัวกรอง FIRของParks-McClellan ที่เหมาะสมได้อย่างไร (aka ใน MATLAB)
ป.ล.ฉันทราบว่าฉันสามารถออกแบบตัวกรองต่างกันโดยใช้หน้าต่างหรืออย่างอื่น ... อย่าลังเลที่จะพูดถึงพวกเขาในความคิดเห็น แต่ประเด็นของคำถามนี้ไม่ได้ถามว่า "เทคนิคการออกแบบตัวกรองอื่น ๆ คืออะไร" จุดคือการหาการดำเนินการเปิดแหล่งที่มาของที่ดีมีประโยชน์มาก ... หรือสิ่งที่คล้ายกัน
PPSหนึ่งในเป้าหมายของคำถามนี้คือการเรียนรู้ว่าอัลกอริทึม Parks-McClellan ทำงานอย่างไรโดยดูที่รหัสก่อนจากนั้นฉันวางแผนที่จะอ่านทฤษฎีพื้นหลัง
type firpm.m
ใน MATLAB แล้วหรือยัง ที่จะแสดงให้คุณเห็นการใช้งานของ MATLAB