آموزش متلب
spatial filtering روش های فیلترینگ مکانی در نرم افزار متلب (8)
28 آذر 1401
آموزش متلب
spatial filtering روش های فیلترینگ مکانی در نرم افزار متلب 3 (10)
23 دی 1401
Show all

spatial filtering روش های فیلترینگ مکانی در نرم افزار متلب 2 (9)

آموزش پردازش تصویر متلب

spatial filtering روش های فیلترینگ مکانی در نرم افزار متلب 2

توابع fspecial – Gaussian – Disk – Average در متلب 

بخش 9 آموزش برنامه نویسی درنرم افزار متلب 

در این بخش میخوانیم :

1-  توابع fspecial

2-  آشنایی با تابع Disk

3- آشنایی با تابع Average

4- آشنایی با تابع  Gaussian 

5- فرمول کلی تابع 

6- تعریف اجیتکشن

7- تعریف بند ریجکت

 

توابع Average – Disk – fspecial – Gaussian  در متلب :

در تابع fspecial فیلتر های خاصی هست که خود به خود ماتریس را ایجاد میکند .

 

توابع fspecialدر متلب

 

  1. fspecial average
    Clc ;
    Clear ;
    Close all ;
    Img 1 = imread ( ‘ rice . png ‘ ) ;
    W = fspecial ( ‘ average ‘ , [ 1  10 ] ) ;
    Img 2 = imfilter ( img 1 , w , ‘ circular ‘ ) ;
    Figure ;
    Subplot ( 1 , 2 , 1 ) ;
    Imshow ( img 1 ) ;
    Title ( ‘ Original Image ‘ ) ;
    Subplot ( 1 , 2 , 2 ) ;
    Imshow ( img 2 ) ;
    Title ( After Average Filter ‘ ) ;

 

توابع fspecial در متلب

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

گاهی تصویر در جائی تکان میخورد باید بتوانیم تصویر را به حالت قبل باز یابی کنیم .

 در صدا متغیر ما بُعدزمان است نه مکان صدا هم میتواند با قبل و بعدش ترکیب شود که به آن اِکو میگویند .

 یکی از روش های بهبود تصویر حذف پیچیدگی است .

هر کدام از توابع Average – Disk – fspecial – Gaussian  در متلب نوعی پیچیدگی را برطرف میکنند .

 

Disk یا دایره :

 

  1. >> w = fspecial ( ‘ disk ‘ , 50 ) ;
    >> max ( w ( : ) )
    Ans =
    1.2732 e – 04
    >> 1 / max ( w ( : ) )
    Ans = 
    7.8540 e + 03
    >> w = w / max ( w ( : ) ) ;
    >> imshow ( w )

 

تابع  Disk در متلب

نتیجه نمایش این فیگور یک تصویر دایره ای با گوشه های نرم است . وزنش صفر است اما میانگین وزنی دارد.

 دیسک تا شعاع خاصی موثر است از یک حد دور تر موثر نیست .

 

  1. Clc ;
    Clear ;
    Close all ;
    Img 1 = imread ( ‘ rice . png ‘ ) ;
    R = 3 ;
    Wa = fspecial ( ‘ average ‘ , 2 * r + 1 ) ;
    Wd = fspecial (‘ disk ‘ ,r ) ;
    Img 2 = imfilter (img 1 , wa , ‘ circular ‘ ) ;
    Img 3 = imfilter ( img 1 , wd , ‘ circular ‘ ) ;
    Figure ;
    Subplot ( 1 , 3 , 1 ) ;
    Imshow ( img 2 ) ;
    Title ( ‘ After Average Filter ‘ ) ;
    Subplot ( 1 , 3 , 2 ) ;
    Imshow ( img 3 ) ;
    Title ( ‘ After Disk Filter ‘ ) ;

 

توابع fspecial Gaussian در متلب

 Average موجب تار شدن تصویر میشود ولی نقاط دور را هم تحت تاثیر قرار میدهد .

disk موجب وضوح بیشتر تصویر میشود ولی فقط نقاط نزدیک را تاثیر میدهد .

هر تصویر از چهار خونه های خیلی ریزی تشکیل شده به نام پیکسل که در حوزه فرکانس بر روی این تغییرات پیکسل به پیکسل تصویر کار میکنیم .

هیچ تغییری در تصویر با رنگ ثابت وجود ندارد و بزرگترین فرکانس آن صفر است .

 همه ی فرکانس ها و نوسان ها در یک تصویر برفکی وجود دارد .

فیلتری که فقط فرکانس پایین را از خود عبور میدهد چه مینامیم؟ فیلتر پایین گذر .

فیلتری که باعث تار شدن تصویر میشود و  تغییرات شدید رنگ و روشنائی را عبور نمیدهد فیلتر پایین گذر گویند  .

فرمول کلی تابع

 اجیتکشن چیست ؟ خط سفیدی که موقع عوض شدن رنگ در فرکانس های بالا بین پیکسل ها ایجاد میشود را گویند

 برای عبور دادن بخش مشخصی از فرکانس ، درتابع های fspecial متلب باید از فیلتر میان گذر استفاده کنیم البته نباید مربوط به رنگ ثابت یا تغییرات شدید باشد .

بند ریجکت چیست ؟ وقتی فرکانس میانی را عبور ندهیم فقط فرکانس های خیلی پایین یا خیلی بالا را عبور دهیم .

از فیلترها و توابع ذکر شده فوق در ساخت نرم افزار پلاک خوان استفاده میشود، کاربرد نرم افزار پلاک خوان در اتوماسیون پارکینگ و نیز راهبند هوشمند پلاک خوان مورد استفاده قرار میگیرد.

راهبند هوشمند مبتنی بر پلاک خوان عمل مینماید تا با خواندن پلاک دارای مجوز عبور اقدام به باز گشایی گیت پارکینگ نماید.

فیلترهای Average و disk و Gaussian  در متلب از فیلترهای پایین گذر محسوب میشوند .

میزان پراکندگی  هر چه کمتر در تصویر نوک تیزتر نمایش داده میشود و هر چه بیشتر باشد پهن تر دیده میشود که آن را با سیگما نمایش میدهیم .

  1. >> fspecial ( ‘ Gaussian ‘ , 101 ) ;
    >> w = fspecial ( ‘ Gaussian ‘ , 101 ) ;
    >> w =  w \ max ( w ( : ) ) ;
    >> imshow ( w )
    
    
    

تابع Gaussian در متلب

چون سریع اُفت پیدا کرده شکل نوک تیز پیدا کرده قسمت سفید مقدار زیادی دارد .

  1. >> w = fspecial ( ‘ Gaussian ‘ , 101 , 10 ) ;
    >> w = w \ max ( w (  : ) ) ;
    > imshow ( w )

توابع fspecial Gaussian در متلب

هر چه وزن بیشتر باشد سفید تر نمایش داده میشود و موجب میشود فیلتر عملکرد نرم تری داشته باشد .

 

 ادامه آموزش متلب در بخش 10

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