تبدیل فوریه ی سیگنال های تنک

Download Report

Transcript تبدیل فوریه ی سیگنال های تنک

‫تبدیل فوریه ی سیگنال های تنک‬
‫براساس‪:‬‬
‫”‪“Nearly Optimal Sparse Fourier Transform‬‬
‫«گروه پژوهش ی دانشگاه ‪»MIT‬‬
‫‪1/22‬‬
‫ارائه دهنده‪:‬‬
‫محمد نجارزادگان‬
‫فهرست مطالب‬
‫• معرفی سیگنال های تنک و تبدیل فوریه ی آن ها‬
‫• کاربرد تبدیل فوریه ی سیگنال های تنک‬
‫• الگوریتم های موجود‬
‫• الگوریتم جدید و مزایای آن‬
‫• مقایسه و نتیجه گیری‬
‫‪2/22‬‬
‫مقدمه‬
‫‪‬محاسبه ی ‪DFT‬‬
‫• پردازش سیگنال‬
‫• پیاده سازی فیلتر‬
‫‪ ‬محاسبه ی ‪ DFT‬در سیستم بالدرنگ‬
‫سرعت باال‬
‫‪ ‬سرعت الگوریتم ‪:[1]FFT‬‬
‫‪3/22‬‬
‫)‪O(n.log(n))  k .n.log(n‬‬
‫معرفی سیگنال تنک‬
‫‪‬تنک بودن در حوزه ی فرکانس‬
‫• صدا‬
‫• تصویر‬
‫• عکس‬
‫‪‬فشرده سازی اطالعات‬
‫• ‪MPEG‬‬
‫• ‪JPEG‬‬
‫‪4/2‬‬
‫‪2‬‬
‫مبنای الگوریتم های ‪SFFT‬‬
‫‪ ‬تعداد نمونه های سیگنال کم است‪.‬‬
‫]‪[1‬‬
‫‪AAFFT: 3%‬‬
‫• همبستگی بین نمونه ها (درون یابی)‬
‫• تعداد نمونه ها وابسته به دقت مورد نظر است‪.‬‬
‫• تعداد نمونه ها وابسته به الگوریتم ‪ SFFT‬است‪.‬‬
‫‪‬تعداد محدودی مولفه فرکانسی وجود دارد‪.‬‬
‫‪5/2‬‬
‫‪2‬‬
‫• وابسته به نوع سیگنال‬
‫• وابسته به طول سیگنال‬
‫‪Sparsity = 4‬‬
‫تنک بودن صدا‬
Voice 2 sec
Voice 10 sec
6/2
2
‫هدف الگوریتم های ‪SFFT‬‬
‫‪ ‬تشخیص مکان مولفه های فرکانسی‬
‫‪‬تشخیص اندازه ی هر مولفه‬
‫‪ ‬پیاده سازی سخت افزاری‬
‫• توان مصرفی‬
‫• حافظه ی مورد نیاز‬
‫‪7/2‬‬
‫‪2‬‬
‫در تعداد عملیات کم‬‫با تعداد نمونه گیری‬‫کم‬
‫الگوریتم های موجود]‪[1‬‬
‫‪AAFFT ‬‬
‫‪C2‬‬
‫))‪O(k .log c 1 (n‬‬
‫های ‪ SFFT‬فقط برای سیگنال های تنک و ‪k‬‬
‫الگوریتم‬
‫• ‪ :k‬تعداد مولفه های فرکانس‬
‫کوچک سریع عمل می کند‪.‬‬
‫‪Hassnieh‬‬
‫‪3/2‬‬
‫))‪O( n.k .log (n‬‬
‫اگر )‪: K  O (n‬‬
‫‪8/2‬‬
‫‪2‬‬
‫))‪O(k.logc1 (n‬‬
‫))‪O( n.k .log3/2 (n‬‬
‫‪O(n.log(n)) ‬‬
‫نحوه ی اجرای الگوریتم‬
‫‪ ‬چهار مرحله اصلی‬
‫• نمونه برداری‬
‫• پنجره گذاری و فیلتر‬
‫• تبدیل فوریه‬
‫• انتخاب مقادیر بزرگ‬
‫‪9/2‬‬
‫‪2‬‬
‫نحوه ی اجرای الگوریتم(ادامه)‬
‫‪‬نمونه برداری‬
‫• کاهش تعداد نمونه ها‬
‫• درون یابی‬
‫‪10/2‬‬
‫‪2‬‬
‫زمان بر‬
‫نحوه ی اجرای الگوریتم(ادامه)]‪[3‬‬
‫‪‬پنجره گذاری و فیلتر‬
‫• تداخل دنباله های ‪ Sinc‬در‬
‫حوزه فرکانس ( خطا)‬
‫• تصحیح خطا به کمک تکرار‬
‫• پیاده سازی فیلتر ‪ :‬حافظه مورد‬
‫نیاز‬
‫‪11/2‬‬
‫‪2‬‬
‫) ‪x( f )  sinc( f‬‬
‫) ‪x(t ).rect (t‬‬
‫نحوه ی اجرای الگوریتم(ادامه)]‪[3‬‬
‫‪‬تبدیل فوریه‬
‫• تبدیل فوریه از هر برش زمانی‬
‫‪ ‬انتخاب ‪ k‬مقدار بیشینه در ‪.FFT‬‬
‫‪12/2‬‬
‫‪2‬‬
‫الگوریتم جدید‬
‫‪‬دو ضعف در الگوریتم های قبلی‬
‫• درون یابی‬
‫• تداخل در حوزه فرکانس‬
‫‪ ‬انتخاب فیلتر مناسب‬
‫‪13/2‬‬
‫‪2‬‬
‫• تداخل‬
‫• درون یابی‬
‫گذاری‬
‫گوسی‬
‫چبیشف‬
‫) ‪rect ( f‬‬
‫شکل دادن در زمان‬
‫) ‪sinc(t‬‬
‫پنجره‬
‫یا‬
‫الگوریتم جدید]‪[4‬‬
‫‪14/2‬‬
‫‪2‬‬
‫شبیه سازی‬
Filter: sinc
Filter: chebychev
Filter: rect
Filter: chebychev
15/2
2
‫پیاده سازی‬
‫‪ ‬نرم افزاری]‪[5‬‬
‫• برنامه ‪C++‬‬
‫• فرکانس ‪3GHz :CPU‬‬
‫• ‪6MB :Cache‬‬
‫• ‪8GB :RAM‬‬
‫‪N  220 , K  500 ( FPGA ‬‬
‫‪16/2‬‬
‫‪2‬‬
‫• ‪Virtex 6‬‬
‫• توان‪1W :‬‬
‫• حافظه‪4.28Mb :‬‬
‫سرعت ‪ 10‬برابر بیشتر‬
‫توان ‪ 100‬برابر کمتر‬
‫) ]‪[3‬‬
[1]‫مقایسه‬
‫• سرعت انجام الگوریتم‬
‫• تعداد نمونه مورد استفاده‬
)Sparsity( ‫• میزان تنک بودن‬
Implementation
Samples
FFTW
N
Runtime
O( N .log( N ))
AAFFT
O(k .log C ( N ))
O(k .log C ( N ))
SFFT
O(k .log 4 ( N ))
O(k .log( N ))
.[1] ‫مقایسه ی الگوریتم های مختلف‬
17/2
2
‫مقایسه]‪[5‬‬
‫‪18/2‬‬
‫‪2‬‬
‫مقایسه]‪[5‬‬
‫‪19/2‬‬
‫‪2‬‬
‫نتیجه گیری‬
‫• ‪ SFFT‬برای سیگنال تنک و ‪ sparsity‬کم ‪ ،‬سریع است‪.‬‬
‫• الگوریتم های ‪ SFFT‬به دلیل تعداد نمونه کم بسیار سریع است‪.‬‬
‫• الگوریتم جدید با انتخاب فیلتر مناسب درون یابی و تکرار را حذف کرده است‪.‬‬
‫‪20/2‬‬
‫‪2‬‬
‫مراجع‬
[1] H.Hassanieh,P.Indyk,D.Katabi,E.Price “ Nearly Optimal
Sparse Fourier Transform”, STOC '12 Proceedings of the 44th
symposium on Theory of Computing 2012,Pages 563-578,.
[2] B.Seg al, M.Iwen “Improved Sparse Fourier Approximation
Results Faster Implementations and Stronger Guarantees”
Springer Science+Business Media, LLC 2012.
[3] A.Agarwal, “FPGA-based design of a Million point Sparse
FFT” 2012.
[4] E.Price, “Sparse Fourier Transform Algorithms” ,2013.
[5] H.Hassanieh,P.Indyk,D.Katabi,E.Price, “Simple and Practical
Algorithm for Sparse Fourier Transform”, SODA
'12 Proceedings of the Twenty-Third Annual ACM-SIAM
Symposium on Discrete Algorithms 2012,Pages 1183-1194 .
21/2
2
‫با سپاس از توجه شما‬
‫سوال؟؟؟‬
‫‪22/2‬‬
‫‪2‬‬