ขณะที่ผมแสดงความคิดเห็นในโพสต์ก่อนหน้านี้เวลาความถี่วิธีการวิเคราะห์ที่เรียกว่า "ในระยะสั้นฟูเรียร์" เทียบเท่ากับธนาคารกรองการวิเคราะห์สัญญาณของคุณx สำหรับหน้าต่างการวิเคราะห์ที่ระบุw n , ขนาดN , ตัวกรองที่ความถี่k / Nคือ:
h n = w - n - e j 2 π n kXxwnNk/N
hn=w−nej2πnkN
สำหรับหน้าต่างการวิเคราะห์ตามปกติ (Hann, Hamming หรือสี่เหลี่ยมผืนผ้า) สิ่งนี้สอดคล้องกับตัวกรองความถี่ต่ำผ่านโดยมีความถี่ตัดรอบซึ่ง "เลื่อน" เป็นความถี่ถังk (เนื่องจากการมอดูเลตเชิงเลขชี้กำลังเชิงซ้อน) จึงนำไปสู่ตัวกรองแบนด์ - พาส1 / Nk
ณ จุดนี้เพื่อตอบข้อกังวลของคุณโดยตรงเกี่ยวกับการสะท้อนการรับรู้ของมนุษย์บางคนได้รับ ["การแปลงค่าคงที่ Q" (CQT)] [Brown91] มันอาศัยหลักการเดียวกันกับ FT ในการตีความตัวกรองธนาคาร อย่างไรก็ตามศูนย์ไม่ได้เว้นระยะเชิงเส้นสำหรับ FT "ปกติ" แต่จะเว้นระยะ log2 ขนาดก็จะเกี่ยวข้องกับระดับดนตรีตะวันตก: หากเลือกฉk + 1 = 2 1 / 12ฉkแล้วเราได้ 12 เที่ยวบินต่อคู่ (แหวนระฆัง :-)?) และแบนด์วิดธ์ที่ถูกกำหนดเป็น พูด, 2 1 / 12 - 1ฉkฉk + 1= 21 / 12ฉk. นอกจากนี้คุณยังสามารถเลือกศูนย์อื่น ๆ ตามที่คุณต้องการ21 / 12- 12ฉk
คุณสามารถค้นหาการใช้งานของ CQT ที่นี่และมีหนึ่งเมื่อเร็ว ๆ นี้โดยศ Klapuri มากับผกผันค่อนข้างดีสามารถพบได้ที่นี่ กลุ่มเสียงที่ Telecom ParisTech มีการนำไปใช้โดย Prof. Prado แต่ฉันยังไม่ได้ลอง
[Brown91] J. Brown, "การคำนวณการแปลงสเปกตรัมคิวคงที่", วารสารสมาคมอะคูสติกแห่งอเมริกา, 1991, 89, 425-434
แก้ไข 20121014: คำตอบและความเห็นสำหรับคำถาม (bryhoyt) ของคุณ
เพียงแค่แนวคิดทั่วไปเกี่ยวกับความคิดเห็นของคุณต่อคำถามหลัก: คุณดูเหมือนจะสนใจในแอปพลิเคชั่นมากมายซึ่งสำหรับฉันแล้วไม่ใช่ปัญหาเล็กน้อยที่จะกล่าวถึง "การสร้างแบบจำลอง Timbre" ฟังดูเกี่ยวข้องกับการรู้จำเสียงหรือสิ่งที่คล้ายกันมากขึ้นซึ่งความละเอียดระดับพิทช์หรือความถี่หรือความแม่นยำนั้นไม่ได้เป็นปัญหามากนัก
พิจารณาจำนวนนักวิจัยชั้นนำ ( F. Pachetและทีมงาน repmus ที่ IRCAM ประเทศฝรั่งเศสเพื่ออ้างถึงบางส่วน) กำลังทำงานในหัวข้อการปรับตัวอัตโนมัติและการประกอบโดยอัตโนมัติ: งานนี้เป็นไปไม่ได้ เพื่อสรุประบบทั่วไปจำเป็นต้องเลียนแบบระบบการได้ยินของมนุษย์ (อย่างน้อย) ใช้การรับรู้เสียง / ดนตรี / พิท / จังหวะ / จังหวะการรับรู้เกี่ยวกับทฤษฎีดนตรีและการตัดสินใจขึ้นอยู่กับการประเมินขั้นตอนก่อนหน้านี้ทั้งหมด การแปลงฟูริเยร์หรือการแสดงสัญญาณใด ๆ เป็นเพียงหนึ่งก้าวเล็ก ๆ ไปสู่เป้าหมายสุดท้ายและในความคิดของฉัน
ที่กล่าวว่ายังคงมีความเป็นไปได้ที่ทุกคนมองไกลเกินกว่าสิ่งที่เกิดขึ้นจริงและคุณอาจปราบปรามในวิธีที่ง่ายและสง่างาม! อย่าลืมเผยแพร่เมื่อทำเสร็จแล้ว! :-)
ตัวอย่างของ 0.1s ที่ 44kHz นั้นเพียงพอที่จะมีช่วงความถี่ที่กว้างใหญ่
Fs/N=44100/4410=10Hz
FFT ไม่สามารถตรวจจับสิ่งนี้สำหรับความถี่ต่ำและสูง แต่คุณบอกว่าอัลกอริธึมอื่นสามารถ: สิ่งที่ได้ผล?
คำตอบสั้น ๆ : อ่านวิทยานิพนธ์ของฉันเกี่ยวกับการประมาณทำนอง!
เพื่ออธิบายเพิ่มเติมอีกเล็กน้อย: อัลกอริธึมการประมาณพิตช์จำนวนมากไปไกลกว่าข้อ จำกัด ของ FT ขอบคุณด้วยสมมติฐานของเสียงที่จะประมวลผล เราคาดว่าโน้ตจากเสียงที่เป็นธรรมชาติ (เสียงมนุษย์โอโบแซ็กโซโฟนเปียโน ... ) จะซับซ้อนกว่าไซนัสเดี่ยว เสียงแหลมส่วนใหญ่เป็นเสียงฮาร์มอนิกมากหรือน้อยซึ่งหมายความว่าพวกมันสามารถจำลองเป็นผลรวมของไซนัสด้วยซึ่งความถี่นั้นเป็นความถี่พื้นฐานหลายเท่า
ดังนั้นจึงเป็นประโยชน์ที่จะต้องคำนึงถึงฮาร์มอนิกเหล่านี้เมื่อทำการประมาณระดับเสียงด้วยวิธีการที่ใช้ฟังก์ชั่นตรวจจับเช่นผลรวมของสเปกตรัมผลิตภัณฑ์สเปกตรัมหรือฟังก์ชันสัมพันธ์อัตโนมัติ มีคนเริ่มหัวข้อที่เกี่ยวข้องเมื่อเร็ว ๆ นี้
การแลกเปลี่ยนคืออะไร? โดยเฉพาะอย่างยิ่งความแม่นยำของความถี่ในระดับใดที่ฉันสามารถคาดหวังสำหรับหน้าต่างสั้น ๆ ที่สมเหตุสมผล? (ฉันเข้าใจว่าขนาดของหน้าต่างใน CQT นั้นแปรผันเท่าไร) ยิ่งกว่านั้นโดยเฉพาะฉันจะเข้าใกล้ประมาณเท่าไร เป้าหมายความแตกต่างของความถี่ 0.5% กับหน้าต่าง 0.005s หรือไม่
ดังที่ได้กล่าวไว้ก่อนหน้านี้ด้วยหน้าต่าง 0.005s คุณสามารถคาดหวังบางอย่างเช่น "ความถี่รั่ว" 200Hz นั่นเป็นปัญหาจริงๆเมื่อคุณมีไซนัสด์ 2 ตัวที่มีความถี่ที่ใกล้กว่า 200Hz เช่นว่า FT จะไม่สามารถแสดงได้ว่ามันเป็นไซนัสด์ 2 แบบที่แตกต่างกัน เราอยู่ห่างจาก 0.5% ของคุณ (โดยวิธี semitone อยู่ที่ 6% ของความถี่!) และ 0.005s นั้นค่อนข้างเล็กสำหรับวัตถุประสงค์ของคุณ อย่างไรก็ตามหากคุณต้องการประมาณการทุก ๆ 0.005s คุณยังสามารถประมวลผลเฟรมที่ทับซ้อนกันได้นานกว่าซึ่งมักจะทำในการประมวลผลคำพูด / เพลง นั่นคือสิ่งที่คุณต้องการจริงเหรอ?
Nk=Fsfk(21/B−1)
BB=48fk=100Hzต้องใช้หน้าต่างยาวประมาณ 0.7 วินาที ไม่มีอะไรจะพูดเลยว่าเราสูญเสียการแก้ปัญหาทางโลกไปเล็กน้อย ... แต่ดังที่ได้กล่าวไว้ก่อนหน้านี้นี่เป็นปัญหาเฉพาะเมื่อเราลืมโครงสร้างของเสียง นอกจากนี้ psychoacoustics ยังพิจารณาว่าต่ำกว่า 500 Hz มนุษย์ไม่ได้แยกไซนัสออกจากกันอย่างแท้จริง: แม้แต่มนุษย์ก็ถูกท้าทายที่นั่น แน่นอนเราสามารถหวังว่าคอมพิวเตอร์ของเราสามารถทำได้ดีกว่าเรา แต่ที่นี่เราเผชิญกับปัญหาที่ยาก!
ในที่สุดโปรดทราบว่าวิธีอื่นในการคำนวณการแสดงความถี่เสียงให้พิจารณาเช่น gammatone filter-banks ข้อได้เปรียบของ CQT ที่ฉันกล่าวถึงก่อนหน้านี้คือมีซอฟต์แวร์สำหรับทั้งการแปลงและการกลับด้าน โดยส่วนตัวแล้วฉันยังคงติดอยู่กับ STFT แต่สำหรับความเรียบง่ายและเพราะจนถึงตอนนี้ฉันไม่เคยต้องการความละเอียดที่ดีกว่าในความถี่ต่ำแม้แต่ในการแยกแหล่งข้อมูล
[Schoerkhuber2010] Schoerkhuber, C. และ Klapuri, A. , "กล่องเครื่องมือแปลงค่า Q-Constant สำหรับการประมวลผลเพลง", การประชุมทางเสียงและดนตรีครั้งที่ 7 ที่บาร์เซโลนา, สเปน, 2010