رفتن به مطلب

درون یابی بر پایه تبدیل فوریه سریع در متلب


ارسال های توصیه شده

با استفاده از تابع interpft می توانید یک درون یابی یک بعدی بر پایه تبدیل فوریه سریع انجام دهید. در این روش، برداری شامل مقادیر یک تابع تناوبی محاسبه می شود. سپس تبدیل معکوس فوریه با استفاده از نقاط بیشتری انجام می گیرد. شکل کلی این تابع به صورت زیر است:

برای مشاهده این محتوا لطفاً ثبت نام کنید یا وارد شوید.

که در آن:

yبرداری شامل مقادیر به دست آمده از درون یابی است.

x برداری شامل یک تابع تناوبی می باشد.

n تعداد نقاط با فاصله های مساوی است که باید برگردانده شود.

توجه کنید که اگر x یک ماتریس باشد، درون یابی روی هر ستون انجام می شود

 

درون یابی دو بعدی

برای درون یابی دو بعدی از تابع interp2 استفاده می شود. شکل کلی این تابع به صورت زیر است:

برای مشاهده این محتوا لطفاً ثبت نام کنید یا وارد شوید.

 

که در آن:

zi: آرایه ای دو بعدی شامل مقادیر به دست آمده از درون یابی است.

z: آرایه ای دو بعدی شامل مقادیر یک تابع دو بعدی است.

x,y: آرایه های هم اندازه با z است که شامل نقاطی می باشد که مقدارآنها در داده شده است.

xi , yi :نقاطی را در برمی گیرند که باید مقادیر آنها درون یابی شوند.

method: رشته ای اختیاری است که روش درون یابی را مشخص می کند.

در شکل زیر رابطه بین داده های موجود و داده های درون یابی شده، نشان داده شده است.

http://www.noandishaan.com/upload/images/dc6qrllpzo8nhye5atrt.jpg

سه روش برای درون یابی دو بعدی وجود دارد:

 

درون یابی نزدیکترین همسایه : nearest neightbor interpolation

در این حالت

برای مشاهده این محتوا لطفاً ثبت نام کنید یا وارد شوید.

است. در این روش یک سطح ثابت تکه ای از مقادیر داده ها عبور داده میشود. مقدارنقطه درون یابی شده، برابر با مقدار نزدیکترین نقطه به آن در نظر گرفته می شود.

 

درون یابی خطی bilinear interpolation

در این حالت

برای مشاهده این محتوا لطفاً ثبت نام کنید یا وارد شوید.

است. در این روش یک سطح دو خطی از بین داده ها عبور داده می شود. مقداریک نقطه درون یابی شده، ترکیبی از مقادیر چهار نقطه نزدیک به آن است.

 

 

درون یابی دومکعبی bicubic interpolation

در این حالت

برای مشاهده این محتوا لطفاً ثبت نام کنید یا وارد شوید.

است. در این روش یک سطح دو مکعبی از بین داده های موجود عبور داده می شود. مقدار این نقطه درون یابی شده، ترکیبی از مقادیر شش نقطه نزدیک به آن است. در این روش سطح هموارتری نسبت به درون یابی دوخطی ایجاد میشود. این موضوع مزیتی کلیدی در برخی کاربردها ماند پردازش تصویر است. زمانی که می خواهید داده های حاصل از درون یابی و مشتق آنها پیوسته باشد، از درون یابی دومکعبی استفاده کنید.

در تمام این روشها لازم است که xو y یکنواخت باشد یعنی همه نقاط به صورت صعودی یا نزولی مرتب شده باشند. برای این کار از تابع meshgrid استفاده می کنیم.

در ادامه با استفاده از یک مثال ساده و گرافیکی نتایج این سه روش را با یکدیگر مقایسه می کنیم:

ابتدا تابع peaks را ایجاد می کنیم:

(CODE][x,y]=meshgrid(-3:1:3]

(z=peaks(x,y

[surf(x,y,z)[/code

http://www.noandishaan.com/upload/images/hq93nfwzc2a6t31fajs.jpg

حال شبکه ریزتری برای درون یابی ایجاد کنید و با روش نزدیکترین همسایه درونیابی را انجام می دهیم:

 

(CODE][xi,yi]=meshgrid(-3:0.25:3]

(zi1=interp2(x,y,z,xi,yi,'nearest'

[surf(xi,yi,zi1)[/code

http://www.noandishaan.com/upload/images/ovmbzr891p411sz1zj6o.jpg

با روش دوخطی این کار را انجام دهید:

(CODE][xi,yi]=meshgrid(-3:0.25:3]

(zi2=interp2(x,y,z,xi,yi,'bilinear'

[surf(xi,yi,zi1)[/code

 

http://www.noandishaan.com/upload/images/y48jx4pew0731on8zhm.jpg

و در نهایت روش دومکعبی را امتحان می نماییم:

 

(CODE][xi,yi]=meshgrid(-3:0.25:3]

('zi3=interp2(x,y,z,xi,yi,'bicubic

[surf(xi,yi,zi1)[/code

http://www.noandishaan.com/upload/images/ebslq0agrcn2hn6234gr.jpg

  • Like 5
لینک به دیدگاه
×
×
  • اضافه کردن...