آخرین خبر

پردازش سيگنال با نمونه برداري کاهشي و افزايشي در MATLAB

در اين شماره از ماهنامه شما را با نحوه نمونه برداري  از سيگنال آشنا خواهيم کرد. ابتدا با ذکر يک مثال به بيان مفهوم نمونه برداري از سيگنال ميپردازيم وسپس به نکاتي که در اين زمينه وجود دارد اشاره ميکنيم. جهت درک بهتر، يک تابع سينوس با زمان نمونه برداري 05/0 رسم ميشود و سپس با تغيير اين نرخ نمونه برداري (Ts) به 01/0، 1/0 ، 5/0 و 1 به مشاهده تغييرات ايجاد شده در سيگنال اصلي خواهيم پرداخت. در نمايش توابع از دستوراتي مانند stem (جهت رسم گسسته سيگنال)، subplot (جهت رسم چند تصوير در يک شکل) و … که قبلاً با آنها آشنا شده ايد، استفاده ميشود. شکل 1 برنامه نوشته شده جهت رسم تابع سينوس با نرخ نمونه برداري مختلف را نشان ميدهد. سه خط اول برنامه مربوط به پاک کردن محتويات فضاي کار و پنجره دستورات و بستن شکل هاي قبلي است و به منظور جلوگيري از تداخل برنامه جديد با برنامه هاي نوشته شده قبلي استفاده ميشود. سپس نرخ نمونه برداري Ts برابر05/0 انتخاب شده و زمان شبيه سازي اول (t1) از 0 تا 10 ثانيه در نظر گرفته ميشود. بنابراين تعداد نقاط ايجاد شده برابر 10 ثانيه تقسيم بر 05/0 که با عدد صفر اول برابر 201 نمونه خواهد شد. خروجي اول (y1) مقدار سينوس 201 نمونه ورودي خواهد بود که توسط دستور subplot و دستور stem شکل سينوس در پنجره اول شکل 2 رسم ميشود. در انتها توسط دستور title عنواني جهت تمايز اين تصوير با ساير تصاوير شکل 2  انتخاب ميشود. اين روند براي ساير نرخ نمونه برداري ها نيز به ترتيب اجرا ميشود تا اثر نرخ نمونه برداري بيشتر مشخص شود. تصاوير نشان داده شده در شکل 2 گوياي اين است که هر چقدر نرخ نمونه برداري افزايش يابد سيگنال خروجي از تعداد نمونه هاي کمتري تشکيل شده است و بنابراين رزولوشن زماني آن کمتر است. عکس اين موضوع در فرکانس نمونه برداري سيگنال است، هرچقدر فرکانس نمونه برداري سيگنال بالاتر باشد، تعداد نمونه هاي آن سيگنال بيشتر بوده و اطلاعات بيشتري از روند سيگنال در دسترس است.

شکل۱) کد مربوط به رسم سیگنال با نرخ نمونه برداری مختلف

شکل۲) سیگنال سینوسی با نرخ نمونه برداری مختلف

نمونه برداري کاهشي (downsample)
در بحث پردازش سيگنال، در برخي موارد جهت افزايش سرعت پردازش و کاهش زمان پاسخدهي سيستم، نياز است تا فرکانس نمونه برداري کاهش يابد. جهت انجام اين کار از دستور  (upsample(x,n  استفاده ميشود. در اين دستور x سيگنال اصلي و n ضريب کاهش نمونه ها است. به طور مثال اگر n برابر 2 باشد يعني از هر 2 نمونه يک نمونه انتخاب شود. هرچقدر مقدار n افزايش يابد تعداد نمونه هاي سيگنال نمونه برداري شده به نسبت سيگنال اصلي کمتر ميشود. شکل3، تصويري از سيگنال ECG که توسط نرخ نمونه برداري کاهشي 2 و 4 نمونه برداري شده است را نشان ميدهد. همانطور که در اين شکل مشخص است، هر چقدر نرخ نمونه برداري کاهشي عدد بزرگتري ميشود يعني تعداد نمونه هاي کمتري از سيگنال اصلي برداشته ميشود و واضح است سيگنال بازسازي شده توسط اين نمونه ها شباهت کمتري با سيگنال اصلي خواهد داشت. لازم به ذکر است از نظر زماني کليه سيگنال ها داراي زمان يکسان هستند (10 ثانيه) ولي از نظر تعداد نمونه ها سيگنال اصلي داراي طول 1000 نمونه، سيگنالي که با نرخ نمونه برداري کاهشي 2، نمونه برداري شده است داراي طول 500 و سيگنال سومي که با نرخ نمونه برداري 4 نمونه برداري شده است داراي 250 نمونه است که در واقع شباهت کمتري به سيگنال اصلي دارد.

شکل۳) مقایسه سیگنال ECG اصلی با نرخ نمونه برداری های کاهشی ۲ و۴

شکل4 برنامه مربوط به نحوه انجام نمونه برداري کاهشي سيگنال ECG را نشان ميدهد. سه خط اول مربوط به پاک کردن حافظه نرم افزار جهت جلوگيري از تداخل با برنامه هاي قبلي است. دستور load به فراخواني سيگنال ECG پرداخته و 1999 نمونه از اين سيگنال به نام ecg ذخيره ميشود. فرکانس نمونه برداري سيگنال اصلي (Fs) برابر 100 در نظر گرفته شده است. ابتدا اين سيگنال رسم ميشود و سپس توسط نرخ نمونه برداري هاي 2 و 4 و استفاده از دستور downsample، تأثير نرخ نمونه برداري کاهشي در ايجاد سيگنال جديد نشان داده ميشود.

شکل۴) برنامه مربوط به نرخ نمونه برداری کاهشی

نمونه برداري افزايشي (upsample)
جهت افزايش نمونه ها ميتوان از دستور (upsample(x,n استفاده کرد. در اين دستور x سيگنال اصلي و n تعداد نمونه هاي افزايشي است. به طور مثال اگر n برابر 4 باشد يعني به تعداد n-1 (3) نمونه بين دو نمونه در سيگنال اصلي صفر قرار داده ميشود. بنابراين اگر تعداد نمونه هاي سيگنال اصلي برابر L باشد و نرخ نمونه برداري افزايشي برابر n باشد تعداد نمونه هاي سيگنال نمونه برداري شده افزايشي برابر nxL خواهد بود.

4/5 (5 دیدگاه ها)

دیدگاه ها

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

گزارش ویژه‌ی این ماه

wfn_ads

گزارش های کوتاه ماهنامه

wfn_ads
ماهنامه مهندسی پزشکی

خوش آمدید

ورود

ثبت نام

بازیابی رمز عبور