DSP 6 The Fast Fourier Transform (FFT) การแปลงฟูริเยร์แบบเร็ว

Slides:



Advertisements
งานนำเสนอที่คล้ายกัน
โปรแกรมฝึกหัด การเลื่อนและคลิกเมาส์
Advertisements

DSP 6 The Fast Fourier Transform (FFT) การแปลงฟูริเยร์แบบเร็ว
วิชา องค์ประกอบศิลป์สำหรับคอมพิวเตอร์ รหัส
การซ้อนทับกัน และคลื่นนิ่ง
EEET0485 Digital Signal Processing Asst.Prof. Peerapol Yuvapoositanon DSP2-1 2 Discrete-time Signals and Systems สัญญาณและระบบแบบไม่ต่อเนื่องทางเวลา ผศ.ดร.
EEET0485 Digital Signal Processing Asst.Prof. Peerapol Yuvapoositanon DSP3-1 ผศ.ดร. พีระพล ยุวภูษิตานนท์ ภาควิชา วิศวกรรมอิเล็กทรอนิกส์ DSP 5 The Discrete.
ดร. พีระพล ยุวภูษิตานนท์ ภาควิชา วิศวกรรมอิเล็กทรอนิกส์
DSP 4 The z-transform การแปลงแซด
DSP 7 Digital Filter Structures โครงสร้างตัวกรองดิจิตอล
EEET0485 Digital Signal Processing Asst.Prof. Peerapol Yuvapoositanon DSP3-1 ผศ.ดร. พีระพล ยุวภูษิตานนท์ ภาควิชา วิศวกรรมอิเล็กทรอนิกส์ DSP 6 The Fast.
การเลื่อนเงินเดือนข้าราชการ
EEET0770 Digital Filter Design Centre of Electronic Systems and Digital Signal Processing การออกแบบตัวกรองดิจิตอล Digital Filters Design Chapter 2 z-Transform.
ผศ.ดร. พีระพล ยุวภูษิตานนท์ ภาควิชา วิศวกรรมอิเล็กทรอนิกส์
EEET0770 Digital Filter Design Centre of Electronic Systems and Digital Signal Processing การออกแบบตัวกรองดิจิตอล Digital Filters Design Chapter 3 Digital.
ผศ.ดร. พีระพล ยุวภูษิตานนท์ ภาควิชา วิศวกรรมอิเล็กทรอนิกส์
DSP 4 The z-transform การแปลงแซด
DSP 7 Digital Filter Structures โครงสร้างตัวกรองดิจิตอล
DSP 10 Multirate Signal Processing การประมวลผลแบบหลายอัตราสุ่ม
NUMBER SYSTEM เลขฐานสิบ (Decimal Number) เลขฐานสอง (Binary Number)
จำนวนนับใดๆ ที่หารจำนวนนับที่กำหนดให้ได้ลงตัว เรียกว่า ตัวประกอบของจำนวนนับ จำนวนนับ สามารถเรียกอีกอย่างว่า จำนวนเต็มบวก หรือจำนวนธรรมชาติ ซึ่งเราสามารถนำจำนวนนับเหล่านี้มา.
กลุ่มสาระการเรียนรู้ คณิตศาสตร์ โรงเรียนบ้านหนองกุง อำเภอนาเชือก
การแปลงภาพสีเทาให้เป็นภาพขาวดำ
การจำแนกตัวอักษรออกจากบรรทัดข้อความ
จำนวนทั้งหมด ( Whole Numbers )
Kampol chanchoengpan it สถาปัตยกรรมคอมพิวเตอร์ Arithmetic and Logic Unit 1.
รายงานในระบบบัญชีแยกประเภททั่วไป (GL – General Ledger)
ทำการตั้งเบิกเพิ่ม แบบฟอร์ม GFMIS.ขบ.02 เพื่อชดใช้ใบสำคัญ
แนวทางการปฏิบัติโครงการจูงมือ น้องน้อยบนดอยสูง 1.
ง30212 การเขียนโปรแกรมภาษาคอมพิวเตอร์ โรงเรียนปลวกแดงพิทยาคม
กำลังไฟฟ้าที่สภาวะคงตัวของวงจรไฟฟ้ากระแสสลับ
สัปดาห์ที่ 7 การแปลงลาปลาซ The Laplace Transform.
สัปดาห์ที่ 15 โครงข่ายสองพอร์ท Two-Port Networks (Part I)
การวิเคราะห์วงจรโดยใช้ฟูริเยร์
การวิเคราะห์วงจรโดยใช้ฟูริเยร์
Asst.Prof. Wipavan Narksarp Siam University
บทที่ 3 การวิเคราะห์ Analysis.
สถาปัตยกรรมคอมพิวเตอร์ (Computer Architecture)
การแจกแจงปกติ.
การดำเนินการทดสอบทางการศึกษาแห่งชาติ (O-NET)
DSP 4 The z-transform การแปลงแซด
ผศ.ดร. พีระพล ยุวภูษิตานนท์ ภาควิชา วิศวกรรมอิเล็กทรอนิกส์
วิชาคณิตศาสตร์ ชั้นประถมศึกษาปีที่6
ค21201 คณิตศาสตร์เพิ่มเติม 1
F M B N สมบัติของจำนวนนับ ตัวคูณร่วมน้อย (ค.ร.น.).
E-Sarabun.
เรื่องการประยุกต์ของสมการเชิงเส้นตัวแปรเดียว
หน่วยการเรียนรู้ที่ 7 ความรู้เบื้องต้นเกี่ยวกับจำนวนจริง
วิธีเรียงสับเปลี่ยนและวิธีจัดหมู่
เรื่องการประยุกต์ของสมการเชิงเส้นตัวแปรเดียว
ภาษาอังกฤษเพื่อการสื่อสาร อ32204
School of Information Communication Technology,
เรื่องการประยุกต์ของสมการเชิงเส้นตัวแปรเดียว
แบบฝึกหัด จงหาคำตอบที่ดีที่สุด หรือหาค่ากำไรสูงสุด จาก
เรื่องการประยุกต์ของสมการเชิงเส้นตัวแปรเดียว
จำนวนจริง จำนวนอตรรกยะ จำนวนตรรกยะ เศษส่วน จำนวนเต็ม จำนวนเต็มบวก
เรื่องการประยุกต์ของสมการเชิงเส้นตัวแปรเดียว
4 The z-transform การแปลงแซด
การค้นในปริภูมิสถานะ
สื่อการสอนด้วยโปรมแกรม “Microsoft Multipoint”
หน่วยการเรียนรู้ที่ 7 ความรู้เบื้องต้นเกี่ยวกับจำนวนจริง
หน่วยการเรียนรู้ที่ 7 ความรู้เบื้องต้นเกี่ยวกับจำนวนจริง
หน่วยการเรียนรู้ที่ 7 ความรู้เบื้องต้นเกี่ยวกับจำนวนจริง
วิธีเรียงสับเปลี่ยนและวิธีจัดหมู่
บทที่ 1 จำนวนเชิงซ้อน.
โครงสร้างข้อมูลแบบ สแตก (stack)
การค้นในปริภูมิสถานะ
การแบ่งแยกและเอาชนะ Divide & Conquer
Summations and Mathematical Induction Benchaporn Jantarakongkul
ใบสำเนางานนำเสนอ:

DSP 6 The Fast Fourier Transform (FFT) การแปลงฟูริเยร์แบบเร็ว ดร. พีระพล ยุวภูษิตานนท์ ภาควิชา วิศวกรรมอิเล็กทรอนิกส์ EEET0485 Digital Signal Processing

EEET0485 Digital Signal Processing เป้าหมาย นศ รู้จักความหมายของ การแปลงฟูริเยร์แบบเร็ว (Fast Fourier Transform :FFT) และผลการแปลงจากสัญญาณในโดเมนเวลา นศ รู้จัก FFT แบบ Decimation in time (DIT) หรือ DIT-FFT EEET0485 Digital Signal Processing

DFT...ช้าเพราะมีการคูณเลขเชิงซ้อน โดย เลขเชิงซ้อน สังเกตว่า แต่ละค่าของ X(k) นั้น ต้องทำการคูณจำนวนเชิงซ้อน ถึง N ค่า คือ x(0) ถึง x(N-1) และ ถ้าต้องการ X(k), โดยที่ k=0 ถึง N-1 ก็ต้องคูณจำนวนเชิงซ้อน อีก N ครั้ง กลายเป็น NxN = N2 ซึ่งเป็นการกินกำลังงานของโปรเซสเซอร์อย่างมาก !!! EEET0485 Digital Signal Processing

จำนวนการคูณและบวกเลขจริงต่อ การคูณเลขเชิงซ้อนหนึ่งครั้ง จำนวนการคูณและบวกเลขจริงต่อ การคูณเลขเชิงซ้อนหนึ่งครั้ง ตัวอย่าง จงหาจำนวนการคูณและบวก สำหรับการเลขเชิงซ้อนข้างล่าง โดยที่ วิธีทำ มีการคูณ สี่ครั้ง มีการบวกสามครั้ง EEET0485 Digital Signal Processing

จำนวนการคูณเลขเชิงซ้อนสำหรับ DFT กรณี N=2 มีการคูณเลขเชิงซ้อน 4 ครั้ง EEET0485 Digital Signal Processing

จำนวนการคูณเลขเชิงซ้อนสำหรับ DFT (ต่อ) กรณี N=4 มีการคูณเลขเชิงซ้อน 16 ครั้ง EEET0485 Digital Signal Processing

วิธีลดจำนวนการคูณเลขเชิงซ้อน ลองมาดูว่ากรณี N=2 เราได้ เราได้ นั่นคือ EEET0485 Digital Signal Processing

วิธีลดจำนวนการคูณเลขเชิงซ้อน (ต่อ) แต่เนื่องจาก ซึ่งเป็นเลขจำนวนจริง ดังนั้น หรือ โดยการคำนวณ WN ไว้ก่อน จะทำให้ลดการคูณเลขลง ซึ่งอาจจะทำให้ไม่มีการคูณเลขเชิงซ้อนเลย!!! EEET0485 Digital Signal Processing

The Fast Fourier Transform (FFT) เร็ว...เพราะสลับลำดับข้อมูล Radix-2 DIT-FFT FFT เป็นชื่อเรียกโดยรวมๆของ อัลกอริธึมใดๆ ที่มีการแปลง DFT อย่างเร็ว วิธี“แบ่งแยกแล้วปกครอง (Divide and conquer)” ก็เป็นหนึ่งวิธีที่จะลดจำนวนการคูณเลขเชิงซ้อนลง ใช้ การแบ่งทางเวลา (Decimation in time) กับ N สัญญาณโดเมนเวลา โดยที่ N เป็นเลขกำลังของ 2 หรือเรียกว่า Radix-2 ดังนั้นชื่อเต็มเรียกว่า Radix-2 DIT-FFT EEET0485 Digital Signal Processing

บัตเตอร์ฟลาย Butterfly เป็นชื่อเรียก ของ กราฟการไหลของสัญญาณ (signal flow graph) โดยหนึ่ง บัตเตอร์ฟลาย มีการคูณเลขเชิงซ้อน สอง ครั้ง 1 1 Note: จริงๆแล้วแม้ว่า =1 ส่วน = -1, แต่ตอนนี้เราจะนับไปก่อนว่าเป็นเลขเชิงซ้อน EEET0485 Digital Signal Processing

EEET0485 Digital Signal Processing กรณี N=4 DIT-FFT กรณี N =4 โดยที่ เราใช้การ”สลับ”ตำแหน่งของข้อมูลแล้ว ”รวม” (recomposite) EEET0485 Digital Signal Processing

การสลับตำแหน่งและการรวม (recomposite) ซึ่งเป็นการแยกออกเป็น DFT แบบ 2 จุดสองชุด ดังนั้น DFT แบบ 4 จุด = DFT แบบ 2 จุด + Wk4 x DFT แบบ 2 จุด EEET0485 Digital Signal Processing

EEET0485 Digital Signal Processing เรา “ลดรูป” สมการลงได้อีก เราจะสร้าง “บัตเตอร์ฟลาย” เพื่อแสดงการสร้างสัญญาณ X(k) สำหรับ แต่ละค่าของ k EEET0485 Digital Signal Processing

EEET0485 Digital Signal Processing หา หมายเหตุ: ลูกศรที่ไม่เขียนค่ากำกับไว้ จะเท่ากับการคูณด้วย “1” EEET0485 Digital Signal Processing

EEET0485 Digital Signal Processing หา EEET0485 Digital Signal Processing

EEET0485 Digital Signal Processing หา EEET0485 Digital Signal Processing

EEET0485 Digital Signal Processing หา EEET0485 Digital Signal Processing

ผลลัพท์ท้ายสุดคือ 4-point DIT-FFT 1 1 EEET0485 Digital Signal Processing

EEET0485 Digital Signal Processing 8-point DIT-FFT จัดรูปแบบใหม่ EEET0485 Digital Signal Processing

EEET0485 Digital Signal Processing 8-point DIT-FFT (ต่อ) จาก สังเกตว่า เหลือเพียงการคำนวณสำหรับ 4-point DFT เท่านั้น EEET0485 Digital Signal Processing

EEET0485 Digital Signal Processing ลดรูปลงได้อีกไหม? ได้...เพราะเราใช้ประโยชน์จากความเป็นคาบของสัญญาณ EEET0485 Digital Signal Processing

EEET0485 Digital Signal Processing 8-point บัตเตอร์ฟลาย 4-point DFT 4-point DFT EEET0485 Digital Signal Processing 4 บัตเตอร์ฟลาย

แต่เรายังลดรูปได้อีก จาก สมการ 8-point DFT ที่ถูกลดลงเหลือ 4-point DFTx2 2-point DFT 2-point DFT ซึ่งก็คือ การแบ่ง 4-point DFT ออกเป็น 2-point DFTx2 EEET0485 Digital Signal Processing

แยก 4-point DFT ออกเป็น 2-point DFT สำหรับ x(0),x(2),x(4) และ x(6) 1 1 4-point DFT EEET0485 Digital Signal Processing

สำหรับ x(1),x(3),x(5) และ x(7) 2-point DFT 2-point DFT ซึ่งก็คือ การแบ่ง 4-point DFT ออกเป็น 2-point DFTx2 EEET0485 Digital Signal Processing

แยก 4-point DFT ออกเป็น 2-point DFT สำหรับ x(1),x(3),x(5) และ x(7) EEET0485 Digital Signal Processing

EEET0485 Digital Signal Processing DIT-FFT สำหรับ N=8 EEET0485 Digital Signal Processing

สรุป 8-point DFT แตกตัวออกได้จนเหลือ 2-point DFT 4-point DFT + Wk8 x 4-point DFT 2-point DFT + W4k x 2-point DFT 2-point DFT + W4k x 2-point DFT EEET0485 Digital Signal Processing

EEET0485 Digital Signal Processing กรณี 8-point DIT-FFT ตัวรวม 4-point DFT ตัวรวม 8-point DFT (Recomposition to 8-point DFT) ตัวรวม 4-point DFT EEET0485 Digital Signal Processing

EEET0485 Digital Signal Processing กรณี N-point DIT-FFT Recomposition 2-point DFT 2-point DFT 2-point DFT 2-point DFT 2-point DFT EEET0485 Digital Signal Processing

ทำไม FFT ใช้การคำนวณเพียง N log2N ? เมื่อเราให้ R เป็น จำนวนขั้น (stage) ที่มีการรวม เราจะได้ว่า จึงได้ สำหรับ 4–point DFT, R=1 สำหรับ 8–point DFT, R=2 EEET0485 Digital Signal Processing

EEET0485 Digital Signal Processing 4-point DFT 8-point DFT 2 2 4 4 2 2 8 จำนวนครั้ง การรวม (R)= 2 1 4 2 จำนวนครั้ง การรวม (R)= 1 2 EEET0485 Digital Signal Processing

จำนวนบัตเตอร์ฟลายต่อคอลัมน์ (B) 4-point DFT 8-point DFT 2 2 4 4 2 2 8 2 จำนวนบัตเตอร์ ฟลาย (B)= 4 2 2 2 จำนวน บัตเตอร์ฟลาย (B)= 2 จำนวนคอลัมน์ 4 4 4 3 จำนวนคอลัมน์ EEET0485 Digital Signal Processing

จำนวนการคูณเลขเชิงซ้อน = จ.น.บัตเตอร์ฟลายต่อคอลัมน์X จ.น.คอลัมน์ X มีการคูณ 2 ครั้งต่อบัตเตอร์ฟลาย EEET0485 Digital Signal Processing

เปรียบเทียบจำนวนครั้งการคูณเลขเชิงซ้อน ของ DFT และ FFT เราลดการคำนวณ จาก เหลือ N DFT N2 FFT (N log2N) 2 4 8 : 256 512 1,024 16 64 65,536 262,144 1,048,576 24 2,048 4,608 10,240 EEET0485 Digital Signal Processing

ปรับปรุงบัตเตอร์ฟลาย จาก r= เลขใดๆ เราทราบว่า ดังนั้น 1 -1 ทำให้เหลือ จ.น.การคูณเลขเชิงซ้อนเป็น (N/2)log2N EEET0485 Digital Signal Processing

บัตเตอร์ฟลาย 4-point DFT ที่ถูกลดรูป 1 1 1 1 1 1 -1 1 1 1 -1 1 1 -1 -1 เหลือจ.น. การคูณเลขเชิงซ้อนเพียง (N/2)log2N= 4 EEET0485 Digital Signal Processing

EEET0485 Digital Signal Processing สรุป FFT ก็คือ DFT แต่เป็นการสลับตำแหน่งข้อมูลและเทคนิกการรวมสัญญาณ เพื่อย่อยให้จำนวนการแปลงลดรูปลง วิธีการนี้ เรียกว่า Decimation in Time (DIT) และเรียก การแปลงฟูริเยร์แบบเร็วนี้ว่า DIT-FFT การแปลงฟูริเยร์แบบเร็ว (FFT) แบบจะทำให้เหลือการคูณเลขเชิงซ้อนเหลือเพียง Nlog2N ครั้ง จาก N2 ครั้ง เมื่อใช้ DFT หรืออาจจะลดการคูณเลขเชิงซ้อนลงได้อีกเป็น (N/2) log2N หากใช้การปรับปรุงบัตเตอร์ฟลาย EEET0485 Digital Signal Processing