فاطمه بناءهمزایی
2 یادداشت منتشر شدهتاثیر سایز پنجره های فیلترساز در بینایی ماشین
پنجره های فیلترساز در بینایی ماشین
فاطمه بناءهمزایی
گروه مهندسی کامپیوتر ،مهندسی هوش مصنوعی و رباتیک ، دانشگاه آزاد اسلامی ، تهران ، ایران
چکیده:
در دنیای امروز، که تصاویر و ویدئوها حجم عظیمی از داده ها را تشکیل می دهند، بینایی ماشین به عنوان یک ابزار قدرتمند برای تفسیر و تحلیل این داده ها، جایگاه ویژه ای پیدا کرده است. از تشخیص چهره در گوشی های هوشمند گرفته تا تحلیل تصاویر پزشکی برای تشخیص بیماری ها، کاربردهای بینایی ماشین روز به روز در حال گسترش است.
اما چگونه کامپیوترها می توانند تصاویر را مانند انسان ها درک کنند؟ پاسخ این سوال در الگوریتم های پیچیده ای نهفته است که از تکنیک های پردازش تصویر برای استخراج اطلاعات مفید از تصاویر استفاده می کنند. در میان این تکنیک ها، پنجره های فیلترساز نقش کلیدی را ایفا می کنند.
پنجره های فیلترساز، به زبان ساده، ابزارهایی هستند که به کامپیوترها کمک می کنند تا جزئیات مهم تصاویر را شناسایی کنند. این فیلترها با اعمال تغییرات خاص بر روی پیکسل های تصویر، امکان انجام عملیاتی مانند حذف نویز، تشخیص لبه ها و برجسته کردن ویژگی های خاص را فراهم می کنند.
در این مقاله، قصد داریم تا به بررسی عمیق تر پنجره های فیلترساز در بینایی ماشین بپردازیم. ابتدا، به معرفی انواع مختلف فیلترها و نحوه عملکرد آن ها خواهیم پرداخت. سپس، به بررسی کاربردهای این فیلترها در زمینه های مختلف بینایی ماشین، از جمله تشخیص اشیا و تحلیل تصاویر پزشکی، خواهیم پرداخت. در نهایت، به چالش ها و فرصت های پیش روی این حوزه و تاثیر آن بر آینده بینایی ماشین اشاره خواهیم کرد. هدف ما از این مقاله، ارائه یک دیدگاه جامع و کاربردی در مورد پنجره های فیلترساز و نقش آن ها در پیشرفت بینایی ماشین است.
کلمات کلیدی: بینایی ماشین، پردازش تصویر، پنجره فیلترساز، فیلترهای کانولوشنال، تشخیص لبه، کاهش نویز، استخراج ویژگی، یادگیری ماشین، تحلیل تصویر، فیلترهای خطی، فیلترهای غیرخطی.
1- مقدمه:
پنجره های فیلترساز (Filter Windows) یا هسته های کانولوشن (Convolutional Kernels) در بینایی ماشین، ابزارهای اساسی برای پردازش تصاویر هستند. اصطلاحات "کرنل" (Kernel)، "ماسک" (Mask) و "پنجره فیلتر" (Filter Window) اغلب به یک مفهوم اشاره دارند و به جای یکدیگر استفاده می شوند. این پنجره ها، ماتریس های کوچکی از اعداد هستند که برای ایجاد تغییراتی خاص در تصاویر دیجیتال به کار می روند. در واقع، آن ها مانند عدسی هایی عمل می کنند که به الگوریتم های بینایی ماشین امکان می دهند تا ویژگی های مهم تصاویر را استخراج، نویز را کاهش و لبه ها را تشخیص دهند.
1-1-کرنل (Kernel) :
این اصطلاح معمولا در زمینه های ریاضی و پردازش سیگنال استفاده می شود.در پردازش تصویر، کرنل به ماتریس اعدادی اشاره دارد که برای انجام عملیات کانولوشن بر روی تصویر استفاده می شود.
2-1- ماسک (Mask):
این اصطلاح معمولا در زمینه های پردازش تصویر و بینایی ماشین استفاده می شود.ماسک نیز به ماتریس اعدادی اشاره دارد که برای اعمال فیلتر بر روی تصویر استفاده می شود.
3-1- پنجره فیلتر (Filter Window) :
این اصطلاح به ناحیه ای از تصویر اشاره دارد که کرنل یا ماسک بر روی آن اعمال می شود.همچنین، گاهی اوقات این اصطلاح به خود کرنل یا ماسک نیز اشاره دارد.میتونیم بگیم که این سه اصطلاح به یک مفهوم اشاره دارند و تفاوت های جزئی در نحوه استفاده از آن ها وجود دارد.
پنجره فیلتر یک ماتریس کوچک هست که برای اعمال فیلتر بر روی تصویر حرکت می کند و مقدار پیکسل های خروجی را محاسبه می کند.این ماتریس شامل مجموعه ای از وزن ها یا ضرایب است که تعیین می کنند هر پیکسل همسایه چه تاثیری بر پیکسل مرکزی داشته باشد. مقادیر موجود در ماتریس کرنل، نحوه تاثیر فیلتر بر تصویر را تعیین می کنند. به عنوان مثال، کرنل های هموارساز مقادیر مثبتی دارند که به میانگین گیری پیکسل ها کمک می کنند، در حالی که کرنل های تشخیص لبه مقادیر مثبت و منفی دارند که تغییرات شدت نور را شناسایی می کنند.پنجره های فیلتر معمولا مربع هستند. اما می توانند مستطیلی نیز باشند. اندازه پنجره، تعداد پیکسل های همسایه را تعیین می کند، مثلا: 3*3 5*5 7*7.
2- نحوه عملکرد پنجره ی فیلتر:
پنجره فیلتر بر روی یک پیکسل در تصویر قرار می گیرد.محاصبه ی مقادیر پیکسل ها. مقدار حاصل از جمع، جایگزین مقدار پیکسل مرکزی در تصویر خروجی می شود. پنجره فیلتر به پیکسل بعدی در تصویر منتقل می شود و فرآیند تکرار می شود. این عمل برای تمام پیکسل های تصویر ورودی تکرار میشود.به عبارتی این پنجره روی پیکسل های تصویر حرکت می کند، و هر بار مقادیر پیکسل های زیر پنجره با مقادیر کرنل ضرب و جمع می شوند تا مقدار جدید پیکسل مرکزی محاسبه شود.
3- نقش و اهمیت فیلتر ها در پردازش تصویر:
فیلترها در پردازش تصویریک ابزارهای کلیدی برای تغییر و بهبود تصاویر هستند.
در دنیای دیجیتال امروز، تصاویر نقش بسیار مهمی در انتقال اطلاعات و برقراری ارتباط ایفا می کنند. اما تصاویر خام، اغلب دارای نویز، تاری، و سایر نقص هایی هستند که کیفیت آن ها را کاهش می دهند و استخراج اطلاعات مفید از آن ها را دشوار می سازند.در اینجا، فیلترها به عنوان ابزارهای قدرتمند و انعطاف پذیر، وارد عمل می شوند. فیلترها با اعمال تغییراتی بر روی پیکسل های تصویر، امکان انجام عملیاتی مانند کاهش نویز، افزایش وضوح، تشخیص لبه ها، و استخراج ویژگی های مهم را فراهم می کنند.
اهمیت فیلترها در پردازش تصویر به قدری زیاد است که بسیاری از الگوریتم های پیشرفته بینایی ماشین، از آن ها به عنوان بلوک های سازنده اصلی استفاده می کنند. برای مثال، شبکه های عصبی کانولوشنال (CNN)، که در بینایی ماشین مدرن بسیار پرکاربرد هستند، از لایه های متعددی از فیلترهای کانولوشنال برای استخراج ویژگی های پیچیده از تصاویر استفاده می کنند.
با توجه به تنوع کاربردها و نحوه عملکرد فیلترها، آن ها را می توان بر اساس معیارهای مختلفی دسته بندی کرد. در ادامه، به برخی از مهم ترین دسته بندی های فیلترها در پردازش تصویر اشاره خواهیم کرد.
1-3- انواع فیلتر ها:
1-1-3- بر اساس نحوه عملکرد:
1-1-1-3- فیلترهای خطی (Linear Filters):
این فیلترها از ترکیب خطی پیکسل های تصویر استفاده می کنند.
عملکرد آن ها بر اساس اصل برهم نهی (Superposition) است.
مانند فیلتر میانگین و فیلتر گوسی.
2-1-1-3-فیلترهای غیرخطی (Non-linear Filters):
این فیلترها از ترکیب غیرخطی پیکسل های تصویر استفاده می کنند.
عملکرد آن ها بر اساس اصل برهم نهی نیست.
مانند فیلتر میانه و فیلترهای تشخیص لبه.
2-1-3- بر اساس حوزه عملکرد:
1-2-1-3-فیلترهای فضایی (Spatial Filters):
این فیلترها مستقیما بر روی پیکسل های تصویر در حوزه فضایی عمل می کنند.
مانند فیلترهای تار کننده، تیز کننده و تشخیص لبه.
2-2-1-3-فیلترهای فرکانسی (Frequency Filters):
این فیلترها بر روی تبدیل فوریه تصویر در حوزه فرکانس عمل می کنند.
مانند فیلترهای پایین گذر، بالاگذر و میان گذر.
3-1-3- بر اساس هدف:
1-3-1-3- فیلترهای کاهش نویز (Noise Reduction Filters):
برای حذف نویزهای مختلف از تصاویر استفاده می شوند.
مانند فیلتر میانگین، گوسی و میانه.
2-3-1-3- فیلترهای تشخیص لبه (Edge Detection Filters):
برای شناسایی لبه های اشیا و مرزهای بین نواحی مختلف در تصاویر استفاده می شوند.
مانند فیلتر سوبل، کنی و لاپلاسین.
3-3-1-3- فیلترهای تار کننده (Blurring Filters):
برای کاهش نویز و صاف کردن تصاویر استفاده می شوند.
مانند فیلتر گوسی (Gaussian Filter) و فیلتر میانگین (Average Filter).
4-3-1-3- فیلترهای تیز کننده (Sharpening Filters):
برای افزایش وضوح و برجسته کردن لبه ها در تصاویر استفاده می شوند.
مانند فیلتر لاپلاسین (Laplacian Filter).
5-3-1-3- فیلترهای استخراج ویژگی (Feature Extraction Filters):
برای استخراج ویژگی های مهم از تصاویر، مانند بافت و الگوها، استفاده می شوند.
مانند فیلترهای گابور (Gabor Filters).
4-1-3- بر اساس نوع فیلتر:
1-4-1-3- فیلترهای میانگین (Average Filters):
میانگین مقادیر پیکسل های همسایه را محاسبه می کنند.
2-4-1-3- فیلترهای گوسی (Gaussian Filters):
با استفاده از تابع گوسی، وزن های مختلفی را به پیکسل های همسایه اختصاص می دهند.
3-4-1-3- فیلترهای میانه (Median Filters):
مقدار میانه پیکسل های همسایه را محاسبه می کنند.
4-4-1-3- فیلترهای سوبل (Sobel Filters):
برای تشخیص لبه های عمودی و افقی استفاده می شوند.
5-4-1-3- فیلتر کنی (Canny Filters):
یکی از قوی ترین فیلتر ها برای تشخیص لبه است.
6-4-1-3- فیلتر لاپلاسین (Laplacian Filters):
برای افزایش وضوح و برجسته کردن لبه ها در تصاویر استفاده می شوند.
7-4-1-3- فیلترهای گابور (Gabor Filters):
برای استخراج ویژگی های مهم از تصاویر، مانند بافت و الگوها، استفاده می شوند.
4- فیلتر های هموار ساز:
فیلترهای هموارساز (Smoothing Filters) در پردازش تصویر، ابزارهایی هستند که برای کاهش نویز و صاف کردن تصاویر استفاده می شوند. این فیلترها با حذف تغییرات ناگهانی در شدت روشنایی پیکسل ها، تصاویر را هموارتر و یکنواخت تر می کنند. در اینجا به چند نمونه از مهم ترین فیلترهای هموارساز اشاره می کنیم:
1-4- فیلتر میانگین (Average Filter)
1-1-4- نحوه عملکرد:
فرض کنید یک پنجره (3*3) داریم. برای هر پیکسل، مقادیر 9 پیکسل (شامل خود پیکسل و 8 پیکسل اطراف آن) را جمع می کنیم.
سپس، حاصل جمع را بر 9 (تعداد پیکسل ها) تقسیم می کنیم.این مقدار میانگین، جایگزین مقدار پیکسل مرکزی می شود.این فرآیند برای تمام پیکسل های تصویر تکرار می شود.
2-1-4- کاربردها و محدودیت ها:
این فیلتر برای کاهش نویزهای تصادفی و ملایم بسیار مناسب است.اما، به دلیل میانگین گیری، لبه های تیز در تصویر را تار می کند و جزئیات مهم را از بین می برد.هرچه اندازه پنجره بزرگتر باشد، اثر تاری بیشتر خواهد بود.
13-1-4- مزایا و معایب:
تاری کمتری نسبت به فیلتر میانگین.
محاسبات پیچیده تری دارد.
2-4- فیلتر گوسی (Gaussian Filter):
1-2-4- نحوه عملکرد دقیق تر:
این فیلتر از یک تابع گوسی دو بعدی برای تعیین وزن پیکسل ها استفاده می کند.پیکسل های نزدیک تر به مرکز، وزن بیشتری دارند و پیکسل های دورتر، وزن کمتری.این وزن ها به گونه ای محاسبه می شوند که یک توزیع نرمال (زنگوله ای) را تشکیل می دهند.
سپس، مقادیر پیکسل ها در وزن های متناظر ضرب می شوند و حاصل جمع، مقدار پیکسل جدید را تعیین می کند.
2-2-4- کاربردها و مزایا:
این فیلتر نسبت به فیلتر میانگین، تاری کمتری ایجاد می کند، زیرا وزن پیکسل ها به تدریج کاهش می یابد. برای کاهش نویز و تاری ملایم تصاویر بسیار مناسب است.به دلیل توزیع وزن گوسی، اثر هموار سازی طبیعی تر به نظر میرسد.
میزان تاری توسط پارامتر سیگما در تابع گوسی کنترل میشود.
3-4- فیلتر میانه (Median Filter)
1-3-4- نحوه عملکرد دقیق تر:
در این فیلتر، مقادیر پیکسل های درون پنجره مرتب می شوند.سپس، مقدار میانه (مقدار وسط) به عنوان مقدار پیکسل جدید انتخاب می شود.اگر تعداد پیکسل ها زوج باشد، میانگین دو مقدار وسط محاسبه می شود.
2-3-4- کاربردها و مزایا:
این فیلتر برای حذف نویزهای تکانه ای (مانند نویز فلفل و نمک) بسیار موثر است.این نویزها به صورت نقاط روشن یا تاریک تصادفی در تصویر ظاهر می شوند.حفظ بهتر لبه ها نسبت به فیلتر های میانگین و گوسی از مزایای این فیلتر است.
2-3-4- محدودیت ها:
می تواند جزئیات کوچک را از بین ببرد.
محاسبات آن نسبت به فیلتر میانگین پیچیده تر است.
4-4- فیلتر ماکزیمم و مینیمم:
این فیلتر ها برای حذف نویز های خیلی زیاد در تصویر مورد استفاده قرار میگیرند.
5-4- فیلتر دوطرفه (Bilateral Filter) :
این فیلتر، فیلتری غیر خطی است که هموارسازی را در عین حفظ لبه ها انجام میدهد.در این فیلتر، وزن پیکسل ها نه تنها به فاصله مکانی، بلکه به تفاوت شدت نور انها نیز بستگی دارد.
این فیلترها هر کدام ویژگی ها و کاربردهای خاص خود را دارند و انتخاب مناسب ترین فیلتر به نوع نویز، میزان نویز و نیازهای خاص برنامه بستگی دارد.
5- مهم ترین کاربرد های فیلتر ساز ها در بینایی ماشین:
فیلترسازها در بینایی ماشین کاربردهای بسیار گسترده ای دارند. در اینجا به برخی از مهم ترین آن ها اشاره می کنیم:
1-5- کاهش نویز:
فیلترهای هموارساز مانند میانگین، گوسی و میانه، نویزهای تصادفی و تکانه ای را کاهش می دهند.
این امر برای بهبود کیفیت تصاویر در شرایط نوری نامناسب یا با دوربین های کم کیفیت ضروری است.
2-5- تشخیص لبه:
فیلترهای سوبل، کنی و لاپلاسین، لبه های اشیا و مرزهای بین نواحی مختلف را شناسایی می کنند.
این امر در تشخیص اشیا، قطعه بندی تصاویر و تحلیل شکل اشیا کاربرد دارد.
3-5- بهبود وضوح تصویر:
فیلترهای شارپ کننده، وضوح تصاویر را افزایش داده و جزئیات ریز را برجسته می کنند.
این امر در کاربردهایی مانند تشخیص پزشکی و تحلیل تصاویر ماهواره ای اهمیت دارد.
4-5- استخراج ویژگی:
فیلترهای گابور و سایر فیلترهای بافت، ویژگی های مهم تصاویر مانند بافت و الگوها را استخراج می کنند.
این ویژگی ها در طبقه بندی تصاویر، تشخیص اشیا و سایر وظایف بینایی ماشین استفاده می شوند.
5-5- پیش پردازش تصویر:
فیلترها برای عادی سازی روشنایی، اصلاح هندسی و تغییر اندازه تصاویر قبل از تحلیل های بعدی استفاده می شوند.
به عنوان مثال، برای نرمال سازی نور در عکس ها، و یا تغییر اندازه عکس ها برای وارد سازی به شبکه های عصبی.
6-5- تشخیص بافت:
فیلترها می توانند برای تحلیل بافت تصاویر و شناسایی الگوهای تکراری استفاده شوند.
این امر در کاربردهایی مانند تشخیص بافت پارچه، تحلیل تصاویر میکروسکوپی و تشخیص بیماری های پوستی کاربرد دارد.
7-5- قطعه بندی تصویر:
فیلترها می توانند برای قطعه بندی تصاویر و جداسازی نواحی مختلف تصویر از یکدیگر استفاده شوند.
این امر در کاربردهایی مانند تشخیص اشیا در تصاویر و تحلیل تصاویر پزشکی کاربرد دارد.
8-5- تشخیص حرکت:
فیلترها می توانند برای تشخیص حرکت اشیا در تصاویر و ویدئوها استفاده شوند.
این امر در کاربردهایی مانند نظارت تصویری، ردیابی اشیا و تحلیل ترافیک کاربرد دارد.
9-5- تصحیح رنگ:
فیلتر ها میتوانند برای تصحیح رنگ تصاویر و بهبود تعادل رنگی استفاده شوند. این امر در کاربرد های عکاسی دیجیتال و ویرایش تصاویر کاربرد دارد.
10-5- ایجاد جلوه های ویژه:
در زمینه هنر های دیجیتال و طراحی تصاویر، فیلتر ها برای ایجاد جلوه های ویژه بر روی تصاویر مورد استفاده قرار میگیرند.
11-5- تشخیص پزشکی:
تحلیل تصاویر پزشکی (رادیولوژی، MRI، CT) برای تشخیص بیماری ها.
12-5- خودروهای خودران:
شناسایی موانع، پیاده روها، علائم راهنمایی و رانندگی و سایر اشیا.
13-5- نظارت تصویری:
شناسایی فعالیت های مشکوک، تشخیص چهره و ردیابی افراد.
14-5- صنعت:
کنترل کیفیت محصولات، بازرسی خودکار و رباتیک.
15-5- کشاورزی:
تحلیل تصاویر هوایی و ماهواره ای برای تشخیص بیماری های گیاهی، ارزیابی عملکرد محصولات و مدیریت منابع آب.
6- اندازه پنجره فیلتر:
اندازه پنجره فیلتر در پردازش تصویر، یک پارامتر بسیار مهم است که تاثیر قابل توجهی بر نتیجه عملیات فیلترسازی دارد.
همان طور که قبل تر عنوان شد، پنجره فیلتر، یک ماتریس کوچک از اعداد است که بر روی تصویر ورودی حرکت می کند و برای ایجاد تغییراتی در آن استفاده می شود.
اندازه پنجره فیلتر، ابعاد این ماتریس را مشخص می کند. به طور معمول، پنجره های فیلتر مربع هستند. اما می توانند مستطیلی نیز باشند. اندازه پنجره، تعداد پیکسل های همسایه را تعیین می کند، مثلا: 3*3 5*5 7*7.
1-6- پنجره بزرگ:
اندازه های بزرگتر پنجره فیلتر، تاثیر هموارسازی بیشتری دارند. این بدان معناست که نویز بیشتری حذف می شود، اما جزئیات تصویر نیز بیشتر از بین می روند.همچنین، پنجره های بزرگتر می توانند باعث تار شدن (blurring) شدیدتر تصویر شوند.در تشخیص لبه، پنجره های بزرگتر ممکن است لبه های ضعیف را نادیده بگیرند و فقط لبه های قوی را شناسایی کنند.
1-1-6- تاثیر اندازه بزرگ فیلتر :
1-1-1-6-هموارسازی شدید:
فیلترهای بزرگ، مثل 7*7 یا بزرگتر، تاثیر هموارسازی بسیار قوی تری دارند. یعنی که نویزها به طور موثرتری حذف می شوند، اما در عین حال، جزئیات ریز تصویر نیز به شدت از بین می روند.به عنوان مثال، استفاده از یک فیلتر گوسی با اندازه بزرگ، می تواند تصویری بسیار صاف و بدون نویز ایجاد کند، اما لبه ها و جزئیات دقیق تصویر تار خواهند شد.
2-1-1-6-تاری (Blurring) قابل توجه:
فیلترهای بزرگ باعث ایجاد تاری قابل توجهی در تصویر می شوند. این تاری می تواند برای ایجاد افکت های خاص، مانند تاری پس زمینه، استفاده شود.به عنوان مثال، در نرم افزارهای ویرایش تصویر، از فیلترهای بزرگ برای ایجاد افکت "بوکه" (bokeh) استفاده می شود، که در آن پس زمینه تصویر به شدت تار شده و سوژه اصلی واضح باقی می ماند.
3-1-1-6- از دست رفتن جزئیات:
با افزایش اندازه فیلتر، جزئیات ریز تصویر به تدریج از بین می روند. این امر می تواند باعث شود که تصویر مصنوعی و غیرطبیعی به نظر برسد.به عنوان مثال، اگر یک عکس پرتره با جزئیات پوست بالا را با یک فیلتر هموارساز بزرگ پردازش کنید، جزئیات پوست از بین رفته و پوست صاف و مصنوعی به نظر می رسد.
4-1-1-6-تشخیص لبه های قوی:
در فیلترهای تشخیص لبه، فیلترهای بزرگتر، لبه های قوی تر را تشخیص میدهند و لبه های ضعیف تر را نادیده میگیرند.
2-1-6- کاربرد:
1-2-1-6- کاهش نویز در تصاویر با نویز بالا:
در تصاویر با نویز بسیار زیاد، استفاده از فیلترهای بزرگ می تواند به طور قابل توجهی نویز را کاهش دهد و تصویر را قابل قبول تر کند.
2-2-1-6- ایجاد افکت های هنری:
فیلترهای بزرگ می توانند برای ایجاد افکت های هنری، مانند تاری حرکتی ، استفاده شوند.
3-2-1-6- پردازش تصاویر پزشکی:
در برخی از تصاویر پزشکی، مانند تصاویر MRI، از فیلترهای بزرگ برای کاهش نویز و بهبود کیفیت تصویر استفاده می شود.
به طور خلاصه فیلترهای بزرگ برای هموارسازی شدید، ایجاد تاری و کاهش نویزهای قوی مناسب هستند.این فیلترها باعث از دست رفتن جزئیات ریز تصویر می شوند.
2-6- پنجره کوچک:
اندازه های کوچکتر پنجره فیلتر، تاثیر هموارسازی کمتری دارند. این بدان معناست که نویز کمتر حذف می شود، اما جزئیات تصویر بهتر حفظ می شوند.در تشخیص لبه، پنجره های کوچکتر می توانند لبه های ضعیف را نیز شناسایی کنند.
1-2-6-تاثیر فیلترهای کوچک:
1-1-2-6- حفظ جزئیات:
فیلترهای کوچک، مانند 3*3 ، تاثیر هموارسازی کمتری دارند. یعنی که جزئیات ریز تصویر بهتر حفظ می شوند.به عنوان مثال، اگر از یک فیلتر گوسی 3*3 برای کاهش نویز استفاده کنید، نویزهای کوچک کاهش پیدا میکنند، اما لبه ها و جزئیات مهم تصویر همچنان قابل مشاهده خواهند بود.
2-1-2-6- تشخیص لبه های ظریف:
فیلترهای کوچک در تشخیص لبه ها و مرزهای ظریف عملکرد بهتری دارند.به عنوان مثال، فیلتر سوبل 3*3 می تواند لبه های ضعیف و تغییرات کوچک در شدت نور را شناسایی کند.
3-1-2-6- کاهش نویز محدود:
فیلترهای کوچک در کاهش نویزهای کوچک و پراکنده موثر هستند.با این حال، نویزهای بزرگتر و قوی تر ممکن است به طور کامل حذف نشوند.
4-1-2-6- ایجاد تغییرات ظریف:
به طور کلی فیلترهای کوچک باعث ایجاد تغییرات ظریف در تصاویر میشوند.
2-2-6- مثال :
تصور کنید یک عکس با نویزهای کوچک و پراکنده دارید. اگر از یک فیلتر میانگین گیری 3*3 استفاده کنیم ، این نویزها تا حد زیادی کاهش می یابند، اما جزئیات تصویر همچنان قابل مشاهده خواهند بود.
در مورد تشخیص لبه ها، استفاده از فیلتر 3 در 3 سوبل باعث میشود که لبه های ظریف در تصویر به خوبی پیدا شوند.
به صورت خلاصه ،فیلترهای کوچک برای حفظ جزئیات، تشخیص لبه های ظریف و کاهش نویزهای کوچک مناسب هستند.این فیلترها تغییرات ظریف و ملایمی را در تصویر ایجاد می کنند.همطور که در تصویر مشاهده میفرمایید.تصویر سمت چپ حالت original ما هست. که سه تا فیلتر مختلف و روش اعمال شده.اما نکته اینه با سایز پنجره 3 *3 هست .یعنی از سایز کوچیک استفاده شده است.
6-3- نتیجه گیری ،تاثیر اندازه پنجره فیلتر بر نتایج هموارسازی در پردازش تصویر:
در پردازش تصویر، فیلترها ابزارهای قدرتمندی برای بهبود کیفیت تصاویر و استخراج اطلاعات مفید هستند.فیلترهای هموارساز، به ویژه، برای کاهش نویز و صاف کردن تصاویر استفاده می شوند.یکی از عوامل کلیدی در عملکرد فیلترهای هموارساز، اندازه پنجره فیلتر (کرنل) است.
درشکل 2 همانطور که مشاهده میفرمایید ، فیلتربا سایز پنجره (3*3) تا (27*27) نمایش داده شده است.و تاثیرات آن بر روی عکس اصلی به صورت مقایسه ای دیده میشود.این تصویر مقایسه ای، تاثیر چهار نوع فیلتر هموارساز را بر روی یک عکس نشان می دهد:
فیلتر جعبه ای (Box Filter): این فیلتر با میانگین گیری ساده مقادیر پیکسل های اطراف، نویز را کاهش می دهد.با افزایش اندازه کرنل، میزان تاری تصویر به طور خطی افزایش می یابد.در اندازه های بزرگ کرنل، جزئیات تصویر به شدت از بین می روند.این نوع فیلتر به دلیل سادگی در محاسبات، در بعضی از کاربرد های خاص مورد استفاده قرار میگیرد.
فیلتر گوسی (Gaussian Filter) : این فیلتر با استفاده از توزیع گوسی، به پیکسل های نزدیک تر، وزن بیشتری می دهد.تاثیر هموارسازی آن نرم تر و طبیعی تر از فیلتر جعبه ای است.با افزایش اندازه کرنل، تاری تصویر افزایش می یابد، اما حفظ جزئیات بهتری نسبت به فیلتر جعبه ای دارد.این فیلتر یکی از پر کاربرد ترین فیلتر های هموار ساز است.
فیلتر دوطرفه (Bilateral Filter) : این فیلتر علاوه بر فاصله مکانی، تفاوت شدت نور را نیز در نظر می گیرد.به همین دلیل، لبه های تصویر را به خوبی حفظ می کند و در عین حال نویز را کاهش می دهد.با افزایش اندازه کرنل، هموارسازی افزایش می یابد، اما لبه ها به وضوح قابل مشاهده هستند.این فیلتر در کاربرد هایی که نیاز به حفظ لبه ها در عین هموار سازی است بسیار پر کاربرد است.
فیلتر جعبه ای (Box Filter)، فیلتر گوسی (Gaussian Filter)، فیلتر دوطرفه (Bilateral Filter)برای هر فیلتر، چهار اندازه مختلف کرنل (3، 11، 19 و 27) اعمال شده است.هدف از این مقایسه، نمایش بصری تاثیر اندازه کرنل بر میزان هموارسازی و تاری تصویر است.
اندازه کرنل، میزان تاثیر فیلترو روی تصویر را تعیین می کند.کرنل های بزرگتر، هموارسازی شدیدتر و تاری بیشتری ایجاد می کنند.کرنل های کوچکتر، هموارسازی ملایم تر و حفظ جزئیات بیشتری را به همراه دارند.نوع فیلتر در میزان حفظ جزئیات در اندازه های مختلف پنجره فیلتر بسیار موثر است.
انتخاب اندازه مناسب کرنل، به نوع فیلتر، میزان نویز و سطح جزئیات مورد نیاز بستگی دارد.در کاربردهایی که حفظ لبه ها و جزئیات مهم است، فیلتر دوطرفه انتخاب مناسبی است.در کاربرد هایی که سرعت پردازش مهم است و نیاز به هموار سازی زیاد است، فیلتر جعبه ای میتواند مناسب باشد.فیلتر گوسی یک فیلتر همه جانبه است که در اکثر کاربرد ها مورد استفاده قرار میگیرد.
7- نتیجه گیری:
پنجره های فیلترساز، به عنوان ابزاری بنیادین در پردازش تصویر و بینایی ماشین، نقش حیاتی در استخراج اطلاعات مفید از تصاویر ایفا می کنند. از کاهش نویز و بهبود کیفیت تصاویر گرفته تا تشخیص لبه ها و استخراج ویژگی های کلیدی، این فیلترها امکان انجام طیف گسترده ای از عملیات پردازشی را فراهم می آورند.
در طول این مقاله، به بررسی انواع مختلف فیلترها، نحوه عملکرد آن ها و کاربردهای متنوع آن ها پرداختیم. دریافتیم که:
فیلترهای خطی مانند فیلتر میانگین و گوسی، برای هموارسازی و کاهش نویز تصاویر کاربرد دارند.فیلترهای غیرخطی مانند فیلتر میانه، در حذف نویزهای تکانه ای و حفظ لبه ها موثر هستند.فیلترهای تشخیص لبه، امکان شناسایی مرزهای اشیا و استخراج اطلاعات شکلی را فراهم می آورند.اندازه پنجره فیلتر، تاثیر قابل توجهی بر نتیجه عملیات پردازشی دارد و انتخاب آن به نوع عملیات و هدف مورد نظر بستگی دارد.
با پیشرفت های روزافزون در حوزه هوش مصنوعی و یادگیری عمیق، پنجره های فیلترساز به عنوان بلوک های سازنده شبکه های عصبی کانولوشنال (CNN) نقش مهم تری در بینایی ماشین ایفا می کنند. این شبکه ها با بهره گیری از لایه های متعددی از فیلترهای کانولوشنال، قادر به استخراج ویژگی های پیچیده و انجام وظایف پیشرفته ای مانند تشخیص اشیا و قطعه بندی تصاویر هستند.
در نهایت، می توان گفت که پنجره های فیلترساز، همچنان به عنوان ابزاری قدرتمند و انعطاف پذیر، در قلب بسیاری از الگوریتم های بینایی ماشین حضور دارند و نقش کلیدی در پیشرفت این حوزه ایفا می کنند.
8- کارهای آتی:
در پایان این مقاله، با نگاهی به آینده، به بررسی برخی از زمینه های تحقیقاتی و کاربردهای نوظهور پنجره های فیلترساز در بینایی ماشین می پردازیم. با پیشرفت های سریع در حوزه هوش مصنوعی و یادگیری عمیق، فیلترها همچنان نقش کلیدی خود را در استخراج اطلاعات مفید از تصاویر حفظ خواهند کرد. در این بخش، به برخی از مهم ترین کارهای آتی در این زمینه اشاره می کنیم:
توسعه فیلترهای تطبیقی: تحقیقات در زمینه طراحی فیلترهایی که بتوانند به طور خودکار پارامترهای خود را با توجه به ویژگی های تصویر ورودی تنظیم کنند، از اهمیت بالایی برخوردار است. این امر می تواند منجر به بهبود عملکرد فیلترها در شرایط متنوع و کاهش نیاز به تنظیم دستی پارامترها شود.
ادغام فیلترها با یادگیری عمیق: بررسی روش های ادغام فیلترهای سنتی با شبکه های عصبی عمیق، به منظور ارتقای عملکرد سیستم های بینایی ماشین، یکی از زمینه های تحقیقاتی پرطرفدار است. به عنوان مثال، استفاده از فیلترها به عنوان لایه های پیش پردازش در شبکه های CNN یا طراحی شبکه هایی که از فیلترهای قابل یادگیری بهره می برند، می تواند نتایج قابل توجهی به همراه داشته باشد.
طراحی فیلترهای مبتنی بر هوش مصنوعی: استفاده از الگوریتم های هوش مصنوعی برای طراحی فیلترهای جدید، که قادر به استخراج ویژگی های پیچیده تر تصاویر باشند، می تواند به توسعه فیلترهایی با عملکرد برتر در وظایف پیچیده بینایی ماشین منجر شود.
بهبود کارایی فیلترها: تحقیق در زمینه روش های بهبود کارایی فیلترها، به ویژه برای کاربردهای بلادرنگ (Real-time)، از اهمیت ویژه ای برخوردار است. به عنوان مثال، استفاده از سخت افزارهای تخصصی یا الگوریتم های بهینه سازی برای افزایش سرعت پردازش فیلترها، می تواند کارایی سیستم ها را به طور قابل توجهی افزایش دهد.
کاربردهای نوین فیلترها: بررسی کاربردهای جدید فیلترها در زمینه هایی مانند واقعیت افزوده، واقعیت مجازی و رباتیک، می تواند افق های جدیدی را در این حوزه باز کند. به عنوان مثال، استفاده از فیلترها برای بهبود کیفیت تصاویر در محیط های واقعیت افزوده یا برای تشخیص اشیا در محیط های رباتیک، می تواند تحولات چشمگیری را به همراه داشته باشد.
تحقیق در مورد فیلترهای سه بعدی: با توسعه تکنولوژی و ایجاد تصاویر سه بعدی، طراحی و ایجاد فیلتر های مخصوص این نوع تصاویر امری مهم و ضروری است.
9- منابع:
[1] Ravanelli, Mirco, and Yoshua Bengio. "Interpretable convolutional filters with sincnet." arXiv preprint arXiv:1811.09725 (2018).
[2] Prakash A, Storer J, Florencio D, Zhang C. Repr: Improved training of convolutional filters. InProceedings of the IEEE/CVF Conference on Computer Vision and Pattern Recognition 2019 (pp. 10666-10675).
[3] Du SS, Lee JD, Tian Y. When is a convolutional filter easy to learn?. arXiv preprint arXiv:1709.06129. 2017 Sep 18.
[4] Yang M, Isufi E, Schaub MT, Leus G. Simplicial convolutional filters. IEEE Transactions on Signal Processing. 2022 Sep 15;70:4633-48.
[5] Zoumpourlis G, Doumanoglou A, Vretos N, Daras P. Non-linear convolution filters for cnn-based learning. InProceedings of the IEEE international conference on computer vision 2017 (pp. 4761-4769).
[6] Defferrard M, Bresson X, Vandergheynst P. Convolutional neural networks on graphs with fast localized spectral filtering. Advances in neural information processing systems. 2016;29.
[7] Kim P. Convolutional neural network. InMATLAB deep learning: with machine learning, neural networks and artificial intelligence 2017 Jun 16 (pp. 121-147). Berkeley, CA: Apress.
[8] Gavrikov P, Keuper J. Cnn filter db: An empirical investigation of trained convolutional filters. InProceedings of the IEEE/CVF conference on computer vision and pattern recognition 2022 (pp. 19066-19076).
[9] Simonovsky M, Komodakis N. Dynamic edge-conditioned filters in convolutional neural networks on graphs. InProceedings of the IEEE conference on computer vision and pattern recognition 2017 (pp. 3693-3702).
[10] Aloysius N, Geetha M. A review on deep convolutional neural networks. In2017 international conference on communication and signal processing (ICCSP) 2017 Apr 6 (pp. 0588-0592). IEEE.
[11] Xu Y, Fan T, Xu M, Zeng L, Qiao Y. Spidercnn: Deep learning on point sets with parameterized convolutional filters. InProceedings of the European conference on computer vision (ECCV) 2018 (pp. 87-102).
[12] Kovásznay, Leslie SG, and Horace M. Joseph. "Image processing." Proceedings of the IRE 43, no. 5 (1955): 560-570.
[13] Huang, Thomas S., William F. Schreiber, and Oleh J. Tretiak. "Image processing." Proceedings of the IEEE 59, no. 11 (1971): 1586-1609.
[14] Petrou, Maria MP, and Costas Petrou. Image processing: the fundamentals. John Wiley & Sons, 2010.
[15] Phillips, Dwayne. Image processing in C. Vol. 724. Lawrence: R & D Publications, 1994.
[16] Van der Walt, Stefan, Johannes L. Schönberger, Juan Nunez-Iglesias, François Boulogne, Joshua D. Warner, Neil Yager, Emmanuelle Gouillart, and Tony Yu. "scikit-image: image processing in Python." PeerJ 2 (2014): e453.
[17] Awcock, Graeme J., and Ray Thomas. Applied image processing. Basingstoke, UK: Macmillan, 1995.
[18] Acharya, Tinku, and Ajoy K. Ray. Image processing: principles and applications. John Wiley & Sons, 2005.
[19] Chitradevi, B., and P. Srimathi. "An overview on image processing techniques." International Journal of Innovative Research in Computer and Communication Engineering 2, no. 11 (2014): 6466-6472.