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

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

6
โดเมนความถี่แสดงถึงอะไรในกรณีของภาพ
ฉันเพิ่งเรียนรู้เกี่ยวกับโดเมนความถี่ในภาพ ฉันสามารถเข้าใจคลื่นความถี่ในกรณีของคลื่น มันหมายถึงความถี่ที่มีอยู่ในคลื่น ถ้าเราวาดคลื่นความถี่ของcos(2πft)cos⁡(2πft)\cos(2\pi f t)เราได้รับสัญญาณที่แรงกระตุ้น−f−f-fและ+f+f+f F และเราสามารถใช้ตัวกรองที่สอดคล้องกันเพื่อดึงข้อมูลเฉพาะ แต่คลื่นความถี่หมายถึงอะไรในกรณีของภาพ? เมื่อเราใช้ FFT ของภาพใน OpenCV เราจะได้ภาพแปลก ๆ ภาพนี้แสดงถึงอะไร? และแอปพลิเคชันของมันคืออะไร? ฉันอ่านหนังสือบางเล่ม แต่พวกเขาให้สมการทางคณิตศาสตร์มากมายแทนที่จะเป็นนัยยะทางกายภาพ ดังนั้นทุกคนสามารถให้คำอธิบายง่ายๆเกี่ยวกับโดเมนความถี่ในภาพด้วยแอปพลิเคชันอย่างง่ายในการประมวลผลภาพได้หรือไม่?

4
อะไรคือความแตกต่างระหว่างการแปลงฟูริเยร์และการแปลงโคไซน์?
ในการรู้จำเสียงส่วนหน้าส่วนใหญ่ทำการประมวลผลสัญญาณเพื่อให้สามารถดึงคุณสมบัติออกจากสตรีมเสียง การแปลงฟูริเยร์แบบไม่ต่อเนื่อง (DFT) ถูกนำมาใช้สองครั้งในกระบวนการนี้ ครั้งแรกคือหลังจากการเปิดหน้าต่าง หลังจาก Mel Binning นี้ถูกนำไปใช้และจากนั้นก็แปลงฟูเรียร์อื่น ฉันได้สังเกตเห็นว่ามันเป็นเรื่องธรรมดาในตัวรู้จำเสียงพูด (ส่วนหน้าเริ่มต้นในCMU Sphinxเป็นต้น) เพื่อใช้การแปลงแบบโคไซน์แบบแยกส่วน (DCT) แทนที่จะเป็น DFT สำหรับการดำเนินการครั้งที่สอง ความแตกต่างระหว่างการดำเนินการทั้งสองนี้คืออะไร ทำไมคุณต้องทำ DFT ในครั้งแรกและจากนั้น DCT เป็นครั้งที่สอง
75 dct  dft 

3
ทำไม FFT จึง“ สะท้อน”?
หากคุณทำพล็อต FFT ของสัญญาณง่าย ๆ เช่น: t = 0:0.01:1 ; N = max(size(t)); x = 1 + sin( 2*pi*t ) ; y = abs( fft( x ) ) ; stem( N*t, y ) 1Hz sinusoid + DC FFT จากด้านบน ฉันเข้าใจว่าหมายเลขในถังขยะแรกคือ "DC เท่าใด" ที่มีสัญญาณ y(1) %DC > 101.0000 หมายเลขในถังขยะที่สองควรเป็น "เท่าใดรอบ 1 สัญญาณทั้งหมด" …
36 dft 

9
มีอัลกอริทึมสำหรับค้นหาความถี่ที่ไม่มี DFT หรือ FFT หรือไม่
ฉันกำลังค้นหาแอพสโตร์ Android สำหรับนักกีต้าร์ ฉันพบแอปเครื่องรับที่อ้างว่าเร็วกว่าแอปอื่น ๆ มันอ้างว่าสามารถหาความถี่ได้โดยไม่ต้องใช้ DFT (ฉันหวังว่าฉันจะยังมี URL ตามข้อกำหนดนี้) ฉันไม่เคยได้ยินเรื่องนี้ คุณสามารถรับสัญญาณเสียงและคำนวณความถี่โดยไม่ใช้อัลกอริทึม DFT หรือ FFT ได้หรือไม่?
34 audio  fft  frequency  dft 

3
การเรียงลำดับส่วน biquad สำหรับตัวกรองคำสั่งซื้อที่สูงขึ้นทำงานอย่างไร
ฉันกำลังพยายามใช้ตัวกรอง IIR อันดับที่ 8 และบันทึกย่อของแอปพลิเคชันและหนังสือทุกเล่มที่ฉันได้อ่านบอกว่ามันเป็นการดีที่สุดที่จะใช้ตัวกรองลำดับที่สองมากกว่านั้นเป็นส่วนที่สอง ฉันใช้tf2sosMATLAB เพื่อรับค่าสัมประสิทธิ์สำหรับส่วนที่สองซึ่งทำให้ฉันมีค่า 6x4 coeffs สำหรับส่วนของคำสั่งที่สอง 4 ตามที่คาดไว้ ก่อนการใช้งานเป็น SOS ตัวกรองลำดับที่ 8 จำเป็นต้องเก็บค่าตัวอย่าง 7 ค่าก่อนหน้า (และค่าเอาต์พุตด้วย) ตอนนี้เมื่อดำเนินการตามลำดับส่วนที่สองโฟลว์ทำงานอย่างไรจากอินพุตไปยังเอาต์พุตฉันต้องเก็บค่าตัวอย่างก่อนหน้านี้เพียง 2 ค่าหรือไม่ หรือผลลัพธ์ของตัวกรองตัวแรกป้อนเช่นเดียวx_inกับตัวกรองที่สองและอื่น ๆ ?
20 filters  filter-design  infinite-impulse-response  biquad  audio  image-processing  distance-metrics  algorithms  interpolation  audio  hardware  performance  sampling  computer-vision  dsp-core  music  frequency-spectrum  matlab  power-spectral-density  filter-design  ica  source-separation  fourier-transform  fourier-transform  sampling  bandpass  audio  algorithms  edge-detection  filters  computer-vision  stereo-vision  filters  finite-impulse-response  infinite-impulse-response  image-processing  blur  impulse-response  state-space  linear-systems  dft  floating-point  software-implementation  oscillator  matched-filter  digital-communications  digital-communications  deconvolution  continuous-signals  discrete-signals  transfer-function  image-processing  computer-vision  3d 

2
ฉันจะคำนวณสเปคตรัมพลังงานระยะห่างที่บันทึกไว้ได้อย่างไร
ฉันต้องการคำนวณสเปกตรัมพลังงานซึ่งมีระยะห่างความถี่เป็นลอการิทึม ในวิธีการของ Welchมีการแลกเปลี่ยนระหว่างความละเอียดความถี่ของสเปกตรัมพลังงานที่เกิดขึ้นกับจำนวนค่าเฉลี่ย (เช่นข้อผิดพลาดในผลลัพธ์) ฉันต้องการให้การแลกเปลี่ยนนี้เป็นแบบไดนามิกเช่นทำค่าเฉลี่ยน้อยลงสำหรับจุดความถี่ต่ำเพื่อให้ได้ความละเอียดปลีกย่อยที่ความถี่ต่ำ มีวิธีมาตรฐานในการทำเช่นนี้? ฉันคิดว่าวิธีหนึ่งคือการเริ่มต้นpwelchด้วยความละเอียดสูงมาก (จำนวนค่าเฉลี่ยต่ำ) จากนั้นเริ่มต้นสเปกตรัมที่เกิดขึ้นใหม่โดยใช้การทำลอการิทึม
20 dft 

2
ช่องว่างภายในศูนย์โดเมน - การดูแลเป็นพิเศษของ X [N / 2]
สมมติว่าเราต้องการแก้ไขสัญญาณเป็นระยะด้วยจำนวนตัวอย่างที่สม่ำเสมอ (เช่น N = 8) โดยการเติมเต็มศูนย์ในโดเมนความถี่ ให้ DFT X=[A,B,C,D,E,F,G,H] ตอนนี้ขอแผ่นมันถึง 16 Yตัวอย่างที่จะให้ ทุกตัวอย่างในตำราและกวดวิชาออนไลน์ที่ฉันได้เห็นแทรกศูนย์ที่ให้ (จากนั้นเป็นสัญญาณที่ถูกแก้ไข)[Y4...Y11] Y=[2A,2B,2C,2D,0,0,0,0,0,0,0,0,2E,2F,2G,2H]y = idft(Y) ทำไมไม่ใช้แทน Y=[2A,2B,2C,2D,E,0,0,0,0,0,0,0,E,2F,2G,2H]? เท่าที่ฉันสามารถบอกได้ (ความรู้ทางคณิตศาสตร์ของฉันมี จำกัด ): มันลดพลังงานทั้งหมด มันทำให้มั่นใจได้ว่าหากxเป็นมูลค่าที่แท้จริงดังนั้นจึงเป็นy yยังคงตัดกันxทุกจุดตัวอย่างตามที่ต้องการ (ฉันคิดว่านี่เป็นความจริงสำหรับทุกpที่Y=[2A,2B,2C,2D,pE,0,0,0,0,0,0,0,(2-p)E,2F,2G,2H]) เหตุใดจึงไม่ทำเช่นนี้? แก้ไข : xไม่จำเป็นต้องเป็นมูลค่าจริงหรือ จำกัด วง

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

7
อะไรคือความแตกต่างระหว่าง DFT และ FFT ที่ทำให้ FFT เร็วมาก?
ฉันพยายามเข้าใจ FFT นี่คือสิ่งที่ฉันมี: เพื่อที่จะหาขนาดของความถี่ในรูปแบบของคลื่นเราจะต้องตรวจสอบพวกเขาโดยการคูณคลื่นด้วยความถี่ที่พวกเขากำลังค้นหาในสองขั้นตอนที่แตกต่างกัน (บาปและ cos) และเฉลี่ยแต่ละค่า เฟสถูกพบโดยความสัมพันธ์กับทั้งสองและโค้ดสำหรับสิ่งนั้นเป็นดังนี้: //simple pseudocode var wave = [...]; //an array of floats representing amplitude of wave var numSamples = wave.length; var spectrum = [1,2,3,4,5,6...] //all frequencies being tested for. function getMagnitudesOfSpectrum() { var magnitudesOut = []; var phasesOut = []; for(freq in spectrum) { …
16 fft  dft  algorithms 

2
DFT พร้อมช่องว่างแบบเรขาคณิต?
การแปลงฟูริเยร์แบบไม่ต่อเนื่องแบบดั้งเดิม (DFT) และลูกพี่ลูกน้องของมันคือ FFT ผลิตถังขยะที่เว้นระยะเท่ากัน พูดอีกอย่างก็คือคุณได้รับ 10 เฮิร์ตซ์แรกในถังขยะแรก 10.1 ถึง 20 ในวินาที ฯลฯ อย่างไรก็ตามฉันต้องการบางสิ่งที่แตกต่างออกไปเล็กน้อย ฉันต้องการช่วงความถี่ที่ครอบคลุมโดยแต่ละถังเพื่อเพิ่มแบบเรขาคณิต สมมติว่าฉันเลือกตัวคูณ 1.5 จากนั้นเรามี 0 ถึง 10 ในถังขยะแรกฉันต้องการ 11 ถึง 25 ในถังขยะที่สอง, 26 ถึง 48 ในถังขยะที่สาม ฯลฯ เป็นไปได้หรือไม่ที่จะปรับเปลี่ยนอัลกอริทึม DFT ให้ทำงานในลักษณะนี้
16 fft  dft 

3
วิธี demodulate สัญญาณ AFSK ในซอฟต์แวร์
ฉันกำลังพยายามส่งข้อมูลไบนารีจากอุปกรณ์หนึ่งไปยังอีกอุปกรณ์หนึ่งผ่านช่องสัญญาณเสียง (ลำโพง / ไมโครโฟน) ผมใช้ AFSK (เสียงความถี่กดปุ่ม Shift Keying) เช่นเดียวกับใน Packet Radio กับและสองความถี่และ{} ฉันเล่น Ruby ไปสักหน่อยและการติดตั้งครั้งแรกของฉันก็เลียนแบบ demodulator แบบไม่ต่อเนื่องแบบคลาสสิคซึ่งทำงานได้ดีจนถึงตอนนี้1200 Baud1200 บอด1200 \text{ Baud}ฉm a r k= 1200 Hzฉม.aRk=1200 เฮิร์ตซ์f_{mark} = 1200 \text{ Hz}ฉs p a c e= 2200 Hzฉsพีaคอี=2200 เฮิร์ตซ์f_{space} = 2200 \text{ Hz} ปัญหาคือฉันพยายามที่จะพอร์ตนี้ไปยังแพลตฟอร์มมือถือที่มีประสิทธิภาพเป็นกังวลและวิธีแก้ปัญหาปัจจุบันของฉันช้าเกินไป ฉันพบวิธีมากมายในการ demodulate AFSK ในซอฟต์แวร์: เลื่อน DFT …
14 dft  demodulation  fsk 

3
วิธีการคำนวณอย่างมีประสิทธิภาพเฉพาะค่าสัมประสิทธิ์ต่ำของ FFT ที่ไม่มีเบาะรอง
ฉันมีอัลกอริทึมที่ zero pad เรียงลำดับไปที่ 4N ทำ FFT และใช้ความถี่ต่ำสุด N ที่ชี้จาก 4N ที่สร้างขึ้นเท่านั้น ดูเหมือนว่าจะมีงานที่ต้องสูญเปล่ามากมายความคิดใด ๆ ที่สามารถทำได้เร็วกว่านี้
14 fft  dft 

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

2
สามารถใช้ DCT สำหรับสเปกตรัมขนาดเสียงแทน DFT ได้หรือไม่
จากสิ่งที่ฉันเข้าใจ DCT มีขนาดครึ่งถังเป็น DFT ที่มีขนาดเท่ากัน N DFT ยังรวมข้อมูลเฟสด้วย แต่บ่อยครั้งที่สิ่งนี้ไม่จำเป็นเมื่อต้องการสเปกตรัมขนาดเท่านั้น DCT สามารถนำมาใช้เพื่อให้สเปกตรัมขนาดที่มีความหนาแน่นเป็นสองเท่า (ระยะห่างครึ่งช่องเก็บขยะ) ของ DFT หรือข้อมูลเฟสขาดหายไปได้หรือไม่? ทับซ้อนกัน 50% แล้วล่ะ
13 dct  dft 

3
การแปลงฟูริเยร์แบบไม่ต่อเนื่อง: เทอมดีซีคืออะไร?
ขณะนี้ฉันกำลังเล่นกับ Discrete Fourier Transform (DFT) ใน Matlab เพื่อดึงคุณสมบัติต่าง ๆ จากภาพ ฉันชอบที่จะเข้าใจแนวคิดที่ฉันใช้อย่างเต็มที่ ฉันได้อ่านคำอธิบายหลายอย่างเช่นนี้แต่จนถึงขณะนี้ยังไม่มีใครอธิบายความหมายของคำศัพท์ DC ได้ ทั้งหมดที่ฉันรู้ก็คือเทอม k'the ของDFTนั้นสามารถเขียนเป็น: ที่ เป็นปัจจัย twiddle นั่นหมายความว่าเทอมแรก (เทอม DC) คือแอมพลิจูดที่ไม่มีความถี่ มีคนอธิบายได้ไหมว่าเพราะเหตุใดจึงเรียกว่าคำศัพท์ DC? อะไรคือความสัมพันธ์กับ "กระแสตรง" และความเกี่ยวข้องของเทอม DC คืออะไร? มันจะมีประโยชน์เมื่อใดและเพื่ออะไร
13 image  matlab  fft  dft 

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