คำถามติดแท็ก audio

เสียงหรือในแง่ของการประมวลผลสัญญาณสัญญาณเสียงเป็นการแทนเสียงแบบอะนาล็อกหรือดิจิตอลโดยทั่วไปเป็นแรงดันไฟฟ้า

3
ความสัมพันธ์อัตโนมัติในการวิเคราะห์เสียง
ฉันกำลังอ่านข้อมูลเกี่ยวกับAutocorrelationแต่ฉันไม่แน่ใจว่าฉันเข้าใจอย่างแน่ชัดว่ามันทำงานอย่างไรและควรคาดหวังอะไรจากผลลัพธ์ ฉันคิดถูกแล้วว่าฉันควรป้อนสัญญาณของฉันไปยังฟังก์ชัน AC และมีอินพุตหน้าต่างแบบเลื่อน แต่ละหน้าต่าง (ตัวอย่าง 1024 ตัวอย่าง) จะส่งออกสัมประสิทธิ์ระหว่าง -1 ถึง 1 เครื่องหมายจะระบุว่าเส้นตรงขึ้นหรือลงและค่าจะระบุว่าค่าสหสัมพันธ์นั้นแข็งแกร่งแค่ไหน สำหรับความเรียบง่ายสมมติว่าฉันไม่มีเหลื่อมกันและเพียงแค่ย้ายหน้าต่าง 1024 ตัวอย่างทุกครั้ง ในตัวอย่าง 44100 ฉันจะได้ 43 สัมประสิทธิ์และฉันจำเป็นต้องรักษาทั้งหมดหรือไม่ ให้บอกว่าฉันทำสิ่งนี้เพื่อสัญญาณ 200 วินาทีให้ค่าสัมประสิทธิ์ 8600 กับฉัน ฉันจะใช้สัมประสิทธิ์เหล่านี้เพื่อตรวจสอบการทำซ้ำและในทางกลับกันความเร็วได้อย่างไร ฉันควรสร้างเครือข่ายประสาทบางอย่างเพื่อจัดกลุ่มพวกเขาหรือว่า overkill นั้น? ขอบคุณสำหรับความช่วยเหลือ

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

1
การใช้ A-weighting
ฉันต้องการคำนวณความดังของสัญญาณที่กำหนดและฉันได้พบกับเธรดนี้ ฉันสับสนเล็กน้อยเกี่ยวกับมุมมอง A-Weighting ของมัน ฉันไม่สามารถโพสต์ภาพได้ แต่ฉันคิดว่าเว็บไซต์นี้มีสูตรที่ฉันต้องการ (Wa = 10log ... ) สิ่งที่ฉันไม่เข้าใจคือวิธีใช้งานจริงในโปรแกรมของฉัน ถ้าค่าfย่อมาจากความถี่ก็น่าจะสามารถ hardcode ค่าเพราะพวกเขาจะคงที่ หากเป็นกรณีนี้ฉันWaจะนำไปใช้กับค่าตัวอย่างของฉันได้อย่างไรและฉันจะใช้ค่าใดได้อย่างไร ฉันคำนวณสเปกตรัมพลังงานเพื่อรับWINDOW_SIZE/2ค่าและคูณแต่ละค่าในแถบความถี่ด้วยWaค่าที่คำนวณล่วงหน้าที่เกี่ยวข้องหรือเป็นวิธีที่ผิดในการทำหรือไม่? ขอบคุณล่วงหน้า.
11 algorithms  audio 

2
วิธีจัดการกับพื้นฐานขั้นต่ำเมื่อใช้ AMDF สำหรับการแยกพิทช์?
ฉันกำลังใช้ฟังก์ชั่นค่าความแตกต่างเฉลี่ยเพื่อประเมินความถี่พื้นฐานของสัญญาณเสียงแบบกึ่งระยะเวลา AMDF หมายถึง Dn=1N−n∑k=nN−1|Sk−Sk−n|Dn=1N−n∑k=nN−1|Sk−Sk−n| D_n = \frac{1}{N-n}\sum_{k=n}^{N-1}|S_k - S_{k-n}| ที่ไหน NNNคือความยาวของสัญญาณ ฟังก์ชั่นนี้แสดงขั้นต่ำเมื่อสัญญาณถูกเลื่อนด้วยจำนวนเท่ากับระยะเวลา นี่คือรหัสที่ฉันใช้เพื่อแยก pitch (ใน Matlab): a = amdf(f); a = a/max(a); [p l] = findpeaks(-a, 'minpeakprominence', 0.6); pitch = round(sample_freq/l(1); อย่างไรก็ตามฉันกำลังจัดการกับสัญญาณเสียงที่ความถี่พื้นฐานต่ำมาก: เป็นผลให้เกิดปัญหาการเสแสร้งเกิดขึ้น: ขั้นต่ำที่ตรวจพบสอดคล้องกับครึ่งเวลาของสัญญาณ (เช่นฮาร์โมนิที่สอง): ฉันพยายามที่จะสกัดจุดสูงสุดที่ใหญ่ที่สุดและไม่ใช่แค่ครั้งแรก แต่บางครั้งปัญหานี้ยังคงอยู่ ฉันจะปรับปรุงโค้ดและ / หรือฟังก์ชั่น AMDF เพื่อจัดการกับพื้นฐานขั้นต่ำได้อย่างไร

3
อัลกอริทึมผลบิดเบือนดิจิตอล
ฉันอ่านหนังสือ DAFX โดย Udo Zölzerเกี่ยวกับผลการบิดเบือนที่หน้า 124-125 และมันบอกว่าฟังก์ชั่นการจำลองการบิดเบือนที่เหมาะสมได้รับจากฟังก์ชั่น: ฉ( x ) = x| x |( 1 - ex2/ | x |)f(x)=x|x|(1−ex2/|x|)f(x)=\frac{x}{|x|}\left(1-e^{x^2/|x|}\right) ใครสามารถอธิบายสูตรนี้และสัญญาณที่เราได้รับ จากสิ่งที่ฉันเข้าใจ 'x' คือสัญญาณตัวอย่างดังนั้นนี่คือลำดับของตัวเลข | x | อะไร หมายความว่าอย่างไร มันหมายถึงค่าสัมบูรณ์ของ x สำหรับแต่ละค่าตัวอย่าง? ดังนั้นหากฉันต้องการใช้การจำลองผลกระทบการบิดเบือนนี้ ฉันจำเป็นต้องรู้ความยาวของ x (ได้จากจำนวนตัวอย่าง) ในลูปฉันต้องคำนวณสูตรนี้สำหรับค่าตัวอย่างแต่ละค่า หลังจากลูปสิ้นสุดฉันได้รับสัญญาณที่บิดเบี้ยว (ในรูปแบบดิจิตอล) หลังจากนั้นฉันต้องแปลงเป็นสัญญาณอะนาล็อกเพื่อให้ฉันได้ยิน

1
การสอบเทียบลำโพงอัลตราโซนิกและการส่งสัญญาณการสอบเทียบ
ฉันกำลังพยายามปรับเทียบลำโพงล้ำเสียงด้วยจุดประสงค์ของการส่งสัญญาณที่คาดเดาได้ แต่อนิจจาฉันยังคงมีปัญหาอาจเกิดจากการขาด DSP-fu ของฉัน พื้นหลังเล็กน้อย ฉันต้องการให้สามารถเล่นเสียงที่ใกล้เคียงที่สุดกับการบันทึกที่ปรับเทียบที่ฉันมี เท่าที่ฉันเข้าใจทฤษฎีฉันต้องค้นหาฟังก์ชั่นการถ่ายโอนลำโพงและถอดรหัสสัญญาณที่ฉันต้องการปล่อยออกมา บางสิ่งเช่นนี้ (ในโดเมนความถี่): X -> H -> XH ในกรณีที่Xมีการส่งสัญญาณปล่อยออกมาHเป็นฟังก์ชั่นการถ่ายโอนลำโพงและXHเป็นครั้งX Hส่วน ( ./) Hในขณะนี้ควรให้ฉัน ตอนนี้เพื่อที่จะปล่อยสัญญาณที่สอบเทียบแล้วมันควรจะถูกหารด้วยH: X/H -> H -> X เกิดอะไรขึ้น วางลำโพงและไมโครโฟนที่ปรับเทียบห่างกัน 1 เมตรบนขาตั้งกล้อง บันทึกการกวาดแบบเส้นตรงกว่า 30+ 150KHz-20KHz, ยาว 20ms และบันทึกที่ 500 KS / s สัญญาณที่มีการจัดตำแหน่งและเฉลี่ยโดยใช้สคริปต์ Matlab / Octave ด้านล่างภายใต้สคริปต์จะเห็นสัญญาณที่ได้ files = dir('Mandag*'); rng = [1.5e6, …

1
การดำเนินการพื้นฐานประเภทใดบ้างที่ทำกับสัญญาณเสียงเพื่อสร้างเสียงที่น่าสนใจ
ฉันไม่รู้ว่าคำถามนี้จะสมเหตุสมผลหรือไม่เพราะฉันใหม่กับ dsp มาก ในการจู่โจมที่ จำกัด ของฉันเกี่ยวกับเสียง dsp ฉันได้เจอ: การปรับความถี่ Amplitude Modulation การสังเคราะห์สารเติมแต่ง การสังเคราะห์การหักลบ คำถามของฉันคือ: เหล่านี้เป็นหมวดหมู่พื้นฐานที่สำคัญของการจัดการสัญญาณ (โดยเฉพาะสำหรับเสียง) หรือไม่ กล่าวอีกนัยหนึ่งว่าเอฟเฟกต์และสิ่งแฟนซีทั้งหมดที่ FL Studio พร้อมกับชุดปลั๊กอินเต็มรูปแบบสามารถทำได้ถูกแบ่งออกเป็นซีรีย์และการรวมกันของการดำเนินงาน 4 ข้อด้านบน? หรือจะมีทั้งพวงมากกว่า? DAW ที่ทันสมัยพร้อมปลั๊กอินสามารถแยกย่อยประเภทใด ๆ ในลักษณะนี้ได้หรือไม่? 4 หมวดหมู่ข้างต้นมีเหตุผลในตัวเองใช่ไหม! พื้นหลังเล็กน้อย: โดยพื้นฐานแล้วฉันกำลังพยายามสร้างซินธิไซเซอร์ / ตัวแก้ไขเสียงขั้นพื้นฐาน (แต่ยืดหยุ่นมาก) เป็นโครงการเพื่อเรียนรู้ทั้งการเขียนโปรแกรมและเสียง dsp การใช้จาวาฉันเริ่มต้นด้วยการเลียนแบบคลาสซินเดอเรเตอร์ในโลกแห่งความจริงขั้นพื้นฐานการเรียกสิ่งต่าง ๆ เช่น Oscillator และ LFO และสิ่งที่คล้ายกัน แต่ทุกครั้งที่ฉันเรียนรู้สิ่งใหม่ฉันพบว่าตัวเองต้องเขียนทุกอย่าง ฉันกำลังพยายามที่จะเริ่มต้นใหม่อีกครั้งและมากับวัตถุพื้นฐานและโครงสร้างของโปรแกรม เพื่อให้ถูกต้องฉันต้องรู้ว่าฉันควรอนุญาตให้วัตถุเหล่านี้โต้ตอบ ฯลฯ ได้อย่างไร ... …

1
สร้าง spectrogram
ฉันได้พยายามหาเหตุผลสำหรับงานนี้และวางแผนที่จะใช้แพ็คเกจซอร์สของ KissFFT เพื่อทำการแปลงฟูริเยร์อย่างรวดเร็ว โปรดแจ้งให้เราทราบหากนี่เป็นสิ่งที่ถูกต้อง: จัดสรรโครงสร้าง FFT เช่น kiss_fft_alloc(N,0,NULL,NULL) ในกรณีที่Nเป็นขนาดของหน้าต่างฉันใช้ บัฟเฟอร์อินพุตจะอาร์เรย์ขององค์ประกอบของประเภทN kiss_fft_scalarบัฟเฟอร์ส่งออกจะอาร์เรย์ขององค์ประกอบของประเภทN/2 + 1kiss_fft_cpx หมายเลขถอดรหัสN(ขนาดหน้าต่าง) ของตัวอย่าง PCM สำหรับตัวอย่าง PCM แต่ละค่าเฉลี่ยแอมพลิจูดของแต่ละแชนเนล (ตัวอย่างที่ไม่ได้ลงชื่อ) และสเกลตั้งแต่ 0 ถึง 2 (หารด้วย 65536.0) เก็บผลลัพธ์ไว้ในบัฟเฟอร์อินพุต ดำเนินการกับหน้าต่าง (เช่น Hanning) บนบัฟเฟอร์อินพุต ทำการแปลงฟูริเยร์อย่างรวดเร็วบนอินพุตบัฟเฟอร์เก็บไว้ในบัฟเฟอร์เอาต์พุต ตั้งแต่ฉันใช้ค่าจริงเป็น input kiss_fftr()ฉันสามารถใช้ สำหรับN/2ค่าเอาต์พุตให้รับขนาดกำลังสองของข้อมูลที่แปลงแล้วแปลงค่าเป็นสเกล dB ด้วยสูตรต่อไปนี้: 10 * log10 (re * re + im * im) เขียนN/2ค่าจากขั้นตอนที่ 6 …

4
คุณภาพเสียงที่ส่งออก
เมื่ออุปกรณ์ดิจิตอล (PC, เครื่องเล่นสื่อพกพา ฯลฯ ) เล่นไฟล์เสียงดิจิตอล (ogg, mp3, flac และอื่น ๆ ) เอาต์พุตสัญญาณเสียงจะเหมือนเดิมเสมอไม่ว่าจะเป็นอุปกรณ์ประเภทใดหรือยี่ห้อใด ดังนั้นคุณภาพเสียงไม่ควรแตกต่างกัน ตัวอย่างเช่นฉันมี iPod ที่เล่นไฟล์ mp3 ถ้าฉันเล่นไฟล์เดียวกันบนเครื่องเล่นสื่อยี่ห้ออื่นคุณภาพของเสียงควรเหมือนกันเพราะมันเป็นสัญญาณเดียวกัน (ไม่มีอีควอไลเซอร์หรือการดัดแปลงเสียงใด ๆ ) มันเป็นเรื่องจริงเหรอ? ถ้าเป็นจริงฉันก็คิดว่ามันเป็นเพียงหูฟัง / ลำโพงที่มีความสำคัญเท่าที่คุณภาพเสียงเกี่ยวข้อง PS: คำตอบทั้งหมดเป็นสิ่งที่ดีจริงๆ! หวังว่าฉันจะยอมรับได้ทั้งหมด
10 audio 

5
คำถามทางคณิตศาสตร์ที่เกิดจากการใช้การแปลงแบบบิลิแนร์
ดังนั้นสิ่งนี้เกี่ยวข้องกับตำราอาหารและฉันพยายามแก้ไขมันอาจจะสองทศวรรษที่แล้วเลิกและได้รับการเตือนถึงปัญหาที่ไม่ได้แก้ไข แต่มันก็ด่าไปข้างหน้า แต่ฉันก็ยังตกอยู่ในโคลนตม นี่คือตัวกรอง Bandpass แบบง่าย (BPF) ที่มีความถี่เรโซแนนท์และเสียงก้อง :Ω0Ω0\Omega_0QQQ H(s)=1QsΩ0(sΩ0)2+1QsΩ0+1H(s)=1QsΩ0(sΩ0)2+1QsΩ0+1 H(s) = \frac{\frac{1}{Q}\frac{s}{\Omega_0}}{\left(\frac{s}{\Omega_0}\right)^2 + \frac{1}{Q}\frac{s}{\Omega_0} + 1} ที่ความถี่พ้อง |H(jΩ)|≤H(jΩ0)=1|H(jΩ)|≤H(jΩ0)=1 |H(j\Omega)| \le H(j\Omega_0) = 1 และมีการกำหนดแถบแบนด์ด้านบนและล่าง |H(jΩU)|2=∣∣H(jΩ02BW/2)∣∣2=12|H(jΩU)|2=|H(jΩ02BW/2)|2=12 |H(j\Omega_U)|^2 = \left|H\left(j\Omega_0 2^{BW/2} \right)\right|^2 = \tfrac12 |H(jΩL)|2=∣∣H(jΩ02−BW/2)∣∣2=12|H(jΩL)|2=|H(jΩ02−BW/2)|2=12 |H(j\Omega_L)|^2 = \left|H\left(j\Omega_0 2^{-BW/2} \right)\right|^2 = \tfrac12 เราขอเรียกร้องเหล่านี้"bandedges ครึ่งอำนาจ" เนื่องจากเราเป็นเสียงเราจึงกำหนดแบนด์วิดท์ในอ็อกเทฟและในโลกอะนาล็อกแบนด์วิดท์นี้ในอ็อกเทฟเกี่ยวข้องกับเป็น:BWBWBWQQQ 1Q=2BW−12BW−−−−√=2sinh(ln(2)2BW)1Q=2BW−12BW=2sinh⁡(ln⁡(2)2BW) \frac{1}{Q} = \frac{2^{BW} - 1}{\sqrt{2^{BW}}} …

3
ฉันจะตรวจจับเสียงนกหวีด, ป๊อปและเสียงอื่น ๆ ในอินพุตเสียงสดได้อย่างไร?
ฉันได้อ่านคำถามมากมายเกี่ยวกับ SO และตรงไปตรงมาพวกเขาแต่ละคนไม่ได้อธิบายวิธีการเฉพาะเกี่ยวกับเรื่องนี้ บางคนพูดว่า "ทำ FFT" และบางคนก็พูดว่า "การข้ามศูนย์" เป็นต้น แต่ฉันก็แค่เข้าใจว่าอินพุตเสียงดิจิตอลนั้นประกอบไปด้วยแอมพลิจูดสำหรับความถี่เฉพาะและดี .. ไม่ค่อยรู้เท่าไหร่ เกินมัน ตอนนี้ฉันรู้ทฤษฎี Nyquist, ความถี่, แอมพลิจูด, อนุกรมฟูริเยร์และอื่น ๆ และเมื่อ 2-3 ปีที่แล้วตอนที่ฉันทำในหลักสูตรมหาวิทยาลัยของฉันในบางภาคการศึกษา แต่ก่อนหน้านั้นเราไม่ได้สอนการใช้ฟูริเยร์ในโลกแห่งความเป็นจริงและฉันก็ไม่อยากที่จะขุดเรื่องมากไปกว่าการเรียนรู้มากพอที่จะผ่านเรื่องไป แต่ตอนนี้ฉันจะต้องใช้ทุกอย่าง นี่คือภาพรวมของเสียงที่ฉันพยายามตรวจจับ: เห็นได้ชัดว่าเสียงมีกราฟที่ไม่ซ้ำกัน ฉันแค่ต้องการที่จะเข้าใจวิธีการแยกลักษณะเฉพาะของพวกเขาสำหรับเส้นแหลมคมที่ไม่ซ้ำกันในกราฟ เช่นเดียวกับแอมพลิจูดความถี่และอื่น ๆ และสำหรับเวลาเท่าไหร่ - ถึงแม้ว่ามันจะไม่สำคัญก็ตาม ฉันต้องการขั้นตอนง่าย ๆ รายการคำสั่งไม่คลุมเครือ - ฉันสามารถ google ศัพท์ที่ฉันจะไม่เข้าใจ เช่นนี้อาจ? - รับข้อมูลเสียงอินพุต พลอตโตกราฟ รับกราฟกราฟสำหรับเสียงที่คุณต้องการตรวจจับในสภาพแวดล้อมที่ไม่มีเสียง ศึกษากราฟนั้น - วาดลักษณะเฉพาะของเสียงนั้น สร้างฟังก์ชั่นบางอย่างที่สามารถตรวจจับลักษณะเฉพาะเหล่านั้นในฟีดเสียงสดโดยใช้คุณสมบัติของเสียงที่พบใน (4) หากพบการแข่งขันดี …

1
การวัดการหน่วงเวลาของสัญญาณเสียง
ก่อนที่ทุกคนจะตะโกนใส่ฉันฉันก็ตระหนักว่าคำถามนี้ถูกถามมาหลายครั้งแล้ว ฉันรับรองว่าฉันได้อ่านคำถามและคำตอบที่มีอยู่แล้ว แต่ฉันยังสับสนเกี่ยวกับปัญหา ฉันมีแหล่งกำเนิดเสียงที่เล่นเพลง (A) ในสภาพแวดล้อมที่ปิด ฉันมีไมโครโฟนที่ฉันใช้บันทึก A. ฉันเหลือไฟล์ wav สองไฟล์ซึ่งมีลักษณะและความยาวเท่ากัน (จำนวนตัวอย่าง) เป้าหมายของฉันคือคำนวณเวลาที่ใช้ในการเข้าถึงไมโครโฟน ฉันพยายามคำนวณโดยใช้ความสัมพันธ์ข้าม (numpy): # Delay estimation corr = numpy.convolve(original_audio, recorded_audio, 'full') delay = int(len(corr)/2) - numpy.argmax(corr) distance = delay / sample_rate * 343 # sample_rate == 22050, m/s = speed of sound print("Distance full: %.2f cm" % (distance …

2
การแปลงฟูริเยร์ลอการิทึม (LFT) บนสัญญาณเสียง
ฉันพยายามวิเคราะห์เพลงให้มากที่สุด แน่นอนฉันลอง FFT แต่มีปัญหาบางอย่าง ฉันพบว่าความถี่ต่ำมีความละเอียดต่ำกว่าการได้ยินของมนุษย์ ฉันลองใช้ FFT เป็นเวลานานเพื่อแก้ไขปัญหานี้ แต่ถึงแม้จะวิเคราะห์ด้วย 8192 ตัวอย่าง / s ในอัตราตัวอย่าง 44100Hz (หมายถึงไม่มีการแก้ปัญหาเวลา) ฉันได้รับความละเอียดไม่เพียงพอสำหรับความถี่ต่ำ ฉันพบว่ามีวิธีแก้ปัญหาน้อย ประการแรกการแก้ไขกำลังสองบนถังขยะ FFT แต่ดูเหมือนจะไม่ใช่วิธีที่สมบูรณ์แบบ ปัญหาของวิธีนี้คือ: 1. 'ถ้าฉันต้องการหา freqs ระหว่าง freq bins ฉันควรเลือกถังขยะสามอันเพื่อทำการแก้ไข?' 2. 'แม้ฉันจะทำสิ่งนี้ไม่มีข้อมูลเพิ่มเติมที่เกิดขึ้นจริง ฉันรู้ว่าการแก้ไขเป็นวิธีที่ยุ่งยากมาก ' ประการที่สองการดึง freq แต่ละช่องด้วยความถี่ที่ต้องการดังนั้นฉันสามารถแยกลอการิทึมแบบลอการิทึม แต่มีปัญหาต้นทุนการคำนวณที่สำคัญ: (อาจมากกว่า) N ^ 2 ประการที่สาม LFT (การแปลงลอการิทึมฟูริเยต์) ผู้ร้องขอนี้ใช้ตัวอย่างระยะห่างแบบลอการิทึมและให้ผลลัพธ์ที่ตรงกับความต้องการของฉันด้วยความเร็วที่รวดเร็วอย่างไม่น่าเชื่อ /programming/1120422/is-there-an-fft-that-uses-a-logarithmic-division-of-frequency แต่ฉันไม่รู้ด้วยอัลกอริธึมนั้น ฉันพยายามที่จะเข้าใจกระดาษและนำไปใช้ แต่มันเป็นไปไม่ได้เพราะขาดทักษะภาษาอังกฤษและคณิตศาสตร์ของฉัน ดังนั้นฉันต้องการความช่วยเหลือในการใช้ …
9 audio  fft 

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

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

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