تعریف عمل فیلتر کردن

در کل پیکسل های تصویر را به دوسته می توان تقسیم کرد:

  1. پیکسل های تیز
  2. پیکسل های آرام

    به عنوان مثال شکل زیر را در نظر بگیرید:

پیکسل های زیر ناحیه های قرمز در این تصویر را در دسته پیکسل های تیز قرار می دهیم. پیکسل هایی از تصویر را که اختلاف شدت روشنایی آنها ( مقدار پیکسل ) با پیکسل های همسایه خود زیاد باشند، پیکسل های تیز می نامیم. پیکسل های تیز معمولا یا نشان دهنده لبه های اشیای موجود در تصویر هستند یا نشان دهنده نویزهای یک تصویر هستند و در حالت کلی می توان گفت که جزئیات تصویر با استفاده از پیکسل های تیز استخراج می شوند. به عنوان مثال، تصاویری که هنگام شب توسط موبایل یا یک وب کم گرفته می شوند، دارای نویز معروف فلفل-نمکی هستند. تصویر زیر گویای این مطلب است:

در مقابل پیکسل های تیز، پیکسل های آرام تصویر قرار دارند ( ناحیه های آبی رنگ در مثال فوق ). پیکسل هایی از تصویر که اختلاف شدت روشنایی آنها با پیکسل های همجوار خود کم است، پیکسل های آرام تصویر می نامیم. حال با توجه به این مطالب به شرح فیلتر کردن تصویر می پردازیم. در حوزه مکانی فیلترها به دسته تقسیم می شوند:

  1. فیلترهای آرام کننده
  2. فیلترهای تیزکننده

فیلترهای آرام کننده با اعمال تغییر در شدت روشنایی پیکسل های تیز تصویر موجب تولید تصاویر آرام تری می شود. همچنین این فیلترها تاثیر چندانی بر روی پیکسل های آرام تصویر نمی گذارند. آرام شدن تصویر بدین معنی است که بخشی از جزئیات تصویر از بین می رود. به عنوان مثال اعمال یک فیلتر آرام کننده بر روی یک تصویر نویزدار موجب کاهش شدت نویزها خواهد شد. یک مثال کاربردی ساده از فیلتر های آرام کننده را می توان حذف چین و چروک ها از تصاویر صورت بیان کرد (قابل توجه دختر خانما ;-) ) . تصاویر روبرو گویای این مطلب هستند.

ساده ترین فیلترهای آرام کننده تصویر فیلترهای میانگین هستند. یک فیلتر میانگین mn، ماسکی است که مقدار هریک از عناصر آن برابر با عدد 1/(m.n) است. به عبارت دیگر مقدار هر پیکسل در تصویر خروجی برابر است با میانگین مقدار شدت روشنایی پیکسل جاری و پیکسل های همسایه پیکسل جاری. برای آرام کردن تصویر فوق از یک فیلتر میانگین 33 استفاده کرده ایم که هریک از عناصر این فیلتر دارای مقداری برابر با 1/9 هستند. سپس با استفاده از کانولوشن این فیلتر را بر وی تصویر بالا اعمال کرده و تصویر پایین را تولید کرده ایم. برخلاف فیلترهای آرام کننده، فیلترهای تیز کننده با اعمال تغییر بر روی پیکسل های آرام تصویر موجب استحراج جزئیات بیشتری از تصویر می شوند. در برخی موارد می بینیم که تصویر داری حالتی بلور مانند است ( جزئیات نمایان نیستند) . در چنین مواردی برای حذف خاصیت بلوری، از فیلترهای تیز کننده تصویر استفاده می کنیم:

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

پردازش تصویر در MATLAB

اعمال فیلتر در محیط MATLAB با استفاده از دستور imfilter انجام می پذیرد. این تابع ، فیلتر مورد نظر را بر روی تصویر مشخص شده در دیگر پارامتر تابع اعمال کرده و نتیجه را به صورت ماتریسی بر می گرداند. مجموعه دستورات زیر آرام کردن ( بلور کردن ) تصویر را با استفاده از تابع imfilter نشان می دهند.

>> im = imread('rice.png');
>> filter = ones(3,3) .* 0.11;
>> imFilt = imfilter(im,filter);
>> imshow(im),figure,imshow(imFilt);