ارائه الگوریتمی جدید برای حذف نویز از تصاویر دیجیتالی با استفاده از شبکه های عصبی و فیلتر میانی:
مقدمه
در عصر مدرن انتقال اطلاعات بصری در فرمت تصاویر دیجیتال به یکی از رایج ترین متدهای اشتراک اطلاعات تبدیل شده است. با این حال تصویر دریافت شده توسط گیرنده ی ارتباط، اغلب آغشته به نویز است. تصویر دریافت شده قبل از هرگونه استفاده ای در یک کاربرد، نیاز به پردازش جهت خذف یا کاهش اثر تخریب کنندگی نویز دارد. علاوه بر این به دلیل نادرست عمل کردن اجزاء سخت افزاری همچنین پیکسل های حسگر دوربین و یا حافظه و یا تبدیل تصویر از یک قالب به قالب دیگر، کپی کردن، اسکن کردن، چاپ و فشرده سازی نیز احتمال افزوده شدن انواع مختلفی از نویز به تصویر وجود دارد. حضور نویز هم از لحاظ ظاهری برای بیننده آزار دهنده است و هم انجام پردازش های بعدی همچون بخش بندی، لبه یابی، تفسیر و تشخیص را با مشکل مواجه می کند. لذا افزایش کیفیت تصویر و حذف نویز موجود در آن یک پیش پردازش اساسی و مهم قبل از هر گونه عملیات دیگر است. کاهش یا حذف نویز به عملیاتی گفته می شود که طی آن پردازش و دست کاری هایی بر روی تصویر ورودی انجام می شود تا تصویر با کیفیت بالاتر جهت استفاده های بعدی به دست آید.
تعیین یک آستامه برای سیستم عصبی برای اینکه سیستم حذف کننده نویز همه پیکسل ها را مورد بررسی قرار ندهد و فقط پیکسل هایی که از این آستانه عبور کنند مورد بررسی و بازیابی قرار گیرند. به همین منظور ابتدا به روش های حذف نویز موجود پرداخته می شود و در انتها این الگوریتم با آستانه مشخص اضافه می شود تا سرعت حذف نویز از تصاویر بیشتر شود.
پردازش تصویر
پردازش تصویر شاخه ای از علم رایانه است که هدف آن پردازش تصاویر برداشته شده توسط دوربین دیجیتال و یا تصاویر اسکن شده توسط اسکنر است. پردازش تصویر از دو جنبه به بهبود اطلاعات بصری برای تفسیر بصری توسط انسان و دیگری ارائه یک تصویر با جزئیات مناسب و کارآمد برای تعبیر توسط ماشین مورد توجه است. (McAndrew, 2004)
سیستمهای پردازش تصویر را می توان در سه سطح پردازشی دسته بندی کرد:
– سطح پایین: عملیات اولیه(مانند حذف نویز، افزایش میزان کنتراست) که در آن ها هم ورودی و هم خروجی سیستم تصویر هستند.
– سطح متوسط: استخراج ویژگی ها (مانند لبه ها، کانتورها، نواحی) از یک تصویر که معمولا این پردازش ها در حیطه بینایی ماشین موجود است.
– سطح بالا: تحلیل و تفسیر محتوایی یک صحنه که اغلب از الگوریتم های یادگیری ماشین در این سطح استفاده می شود.
هر سیستم پردازش تصویر معمولا بر حسب نوع کاربرد و هدف نهایی پردازش شامل بخش های مختلفی است. در گام اول یک تصویر توسط یکی از ابزار های تصویر برداری همچون دوربین دیجیتال یا اسکنر بدست می آید. کیفیت تصویر خروجی بلوک تصویر برداری به شدت بر روی کل سیستم تاثیر گذار است. در گام بعد، پیش پردازشی بر روی تصویر ورودی انجام می شود. هدف این پیش پردازش بهبود ظاهری تصویر، بالا بردن کنتراست، حذف نویز، تصحیح درخشندگی، تمیز کردن تصویر یا از بین بردن تاری ناشی از قرار گرفتن سوژه خارج از فاصله کانونی است. در گام بعدی تصویر بر مبنای معیار های مختلفی از جمله ویژگی های بافتی، مولفه های هم بندی، اشکال هندسی و موارد دیگر بخش بندی می شود. و در نهایت در گام نهایی هر یک از بخش ها بر مبنای همین ویژگی ها مورد تجزیه و تحلیل قرار می گیرد و به هر ناحیه یک برچسب نسبت داده می شود. در تمام این مراحل از یک پایگاه دانش بسته به نوع سیستم استفاده می شود. پایگاه دانش علاوه بر محیا کردن دانش لازم برای هر واحد به تعامل بین بخش ها نیز نظارت دارد.(van bemmel and musen, 1997)
پردازش تصویر دارای طیف وسیعی از کاربرد ها است. از آن جمله می توان به موارد زیر اشاره کرد:
– کاربرد های پزشکی
– تفسیر خود کار تصاویر پزشکی سونوگرافی، رادیولوژی و مامو گرافی
– تحلیل تصاویر سلولی از گونه های کروموزوم
– کشاورزی
– پردازش تصاویر ماهواره های جهت تعیین محل مناسب برای کشت محصول
– کنترل کیفیت خود کار محصولات کشاورزی و دسته بندی آن ها در دسته های مختلف
– صنعت
– خودکار سازی خط تولید در کارخانه ها
– تحلیل وضعیت ترافیکی جاده ها
– دسته بندی محصولات کارخانه ای
– قضایی
– تحلیل و بررسی اثر انگشت
– تعیین هویت شخص از روی نشانه های بیومتریک
– تعیین هویت تصاویر(جعلی یا واقعی بودن آن ها)
انواع تصاویر دیجیتال
تصویر در واقع یک تابع دو بعدب مانند (F(x,y است که در آن آرگومان های ورودی x,y مختصات مکانی در هر نقطه به صورت شماره سطر و شماره ستون است. و مقدار تابع شدت روشنایی آن نقطه از تصویر است. از آن جا که مقادیر (F(x,y و x,y مقادیر گسسته اند، تصویر را یک تصویر دیجیتال می نامند. یک تصویر دیجیتال از تعدادی از عناصر با مقدار و موقعیت مشخص تشکیل شده است که به هر یک از این عناصر پیکسل گفته می شود. برای نمایش یک تصویر با ابعاد M*N از یک ماتریس دو بعدی با M سطر و N ستون استفاده می شود. مقدار هر یک از این عناصر این آرایه شدت روشنایی آن پیکسل را نشان می دهد. بسته به نوع داده ای این آرایه دو بعدی، انواع مختلف از تصاویر بوجود می آیند که در ادامه هر یک از انواع تصاویر به طور خلاصه بررسی می شوند.
تصاویر دودویی
در تصاویر دودویی هر کدام از پیکسل ها می توانند یکی از دو مقدار روشن 1 و خاموش 0 را داشته باشند. لذا برای نگهداری هر پیکسل تنها به یک بیت دودویی نیاز است. یکی از اصلی ترین مزایای این گونه تصاویر حجم کم آن ها است و معمولا برای نگهداری نوشته های چاپی و یا دست نویس، اثر انگشت و نقشه های مهندسی از آن استفاده می شود.(Gonzalez and woods, 2005)
تصاویر شدت روشنایی
تصاویر شدت با نام تصاویر خاکستری نیز شناخته می شوند. در این تصاویر مقدار هر یک ار عناصر آرایه دوبعدی تصویر یک عدد 8 بیتی است که می تواند نقداری بین 0 (معادل رنگ مشکی) و 255 (معادل رنگ سفید) را در خود ذخیره کند. دامنه تغییرات عناصر در این گونه تصاویر، اعداد صحیح بین 0 تا 255 است.
تصاویر رنگی
در تصاویر رنگی هر پیکسل دارای یک رنگ مشخص است که خود ترکیبی از سه مولفه رنگی اصلی قرمز، سبز و آبی است و لذا برای ذخیره کردن یک تصویر رنگی با ابعاد M*N نیاز به سه ماتریس با ابعاد M*N است که هر کدام شدت روشنایی هر کدام از مولفه ها را در خود ذخیره می کنند. به عنوان مثال اگر رنگ یک پیکسل قرمز خالص باشد لایه های رنگی آن به صورت [0و0و255] می باشند. برای نمایش سفید خالص هر سه مولفه رنگی برابر 255 و برای مشکی خالص هر سه مولفه برابر صفر است. تصاویر RGB دارای سه لایه رنگی 8 بیتی هستند و لذا بانام تصاویر 24 بیتی نیز شناخته می شوند. این تصاویر سه برابر تصاویر سطح خاکستری هم اندازه خود فضا اشغال می کنند. (Gonzalez and woods, 2005)
تصاویر شاخص
یکی از مهم ترین معایب تصاویر 24 بیتی عدم سازگاری با سخت افزار های قدیمی بود که قادر به نمایش هم زمان 16 میلیون رنگ نبودند. علاوه بر این به حجم بالای ذخیره سازی نیاز داشتند. راه اصلی که همزمان دو مشکل را حل می کند استفاده از یک بازنمایی شاخص دار است که در آن از یک آرایه دوبعدی هم اندازه با تصویر استفاده می شود. لذا برای نمایش هر تصویر شاخص دار از یک آرایه دو بعدی 8 بیتی تصویر و یک نقشه رنگی 256 مدخلی استفاده می شود.
الگوریتم مبتنی بر تصمیم گیری
در (srinirasan and Ebenezer 2007) روشی با نام الگوریتم مبتنی بر تصمصم گیری ارائه شده است. در صورتی که مقدار هر پیکسل بین مینیمم و ماکزیمم مقدار درون پنجره فیلتر قرار گیرد، پیکسل سالم معرفی شده و بدون تغییر باقی می ماند. اگر پیکسل نویزی باشد و مقدار میانه پنجره فیلتر در بازه مینیمم و ماکزیمم پنجره باشد مقدار میانه جایگزین پیکسل خواهد شد و در غیر این صورت مقدار پیکسل با پیکسل همسایه اش جایگزین می شود. الگوریتم DBA در چگالی نویز بالا نیز کارامد است.
متدهای مبتنی بر محاسبات نرم
در سال های اخیر، تکنیک های پیشرفته محاسبات نرم برای عملیات فیلتر گذاری تصاویر با در نظر گرفتن آن به عنوان یک مسئله غیر خطی بکار گرفته شده اند. هم شبکه های عصبی و هم شبکه های با منطق فازی ابزارهای قدرتمندی برای حل طیف وسیعی از مسائل پردازش تصویر هستند. در منبع یک شبمه عصبی نقشه خود سازماندهی برای آشکار سازی پیکسل های نویزی به همراه یک فیلتر تطبیقی برای فیلتر کردن پیکسل نویزی استفاده شده است. شبکه از انحرافات میانه یعنی تفاضل پیکسل های همسایه با میانه پبجره فیلتر به عنوان ورودی استفاده کرده و پیکسل مرکزی را به دو دسته نویزی و سالم طبقه بندی می کند. این فیلتر قابلیت خوبی در حفظ جزئیات تصویر دارد. مهمترین عیب این فیلتر ابعاد بالای ورودی شبکه و انتخاب تصاویر آموزشی است.
در (zvonarev and khryashchev 2005) از ترکیب فیلتر میانه و شبکه عصبی برای بهبود عملکرد حذف نویز استفاده شده است. سیستم پیشنهاد شده، برای جدا سازی پیکسل نویزی از پیکسل سالم از الگوریتم دو مرحله ای استفاده می کند. در تشخیص اولیه، اگر مقدار هر پیکسل درون بازه [min,max] باشد پیکسل سالم و در غیر این صورت نویز تشخیص داده می شود. پیکسل های کاندید برای نویزی بودن به شبکه عصبی فرستاده می شود تا طبقه بندی انجام شود. از ویژگی های محلی آماری برای ورودی شبکه استفاده شده است. مفهوم منطق فازی در سال 1965 توسط آقای زاده به عنوان یک ابزار ریاضی برای مدل سازی عضویت نسبی در مجموعه های معرفی شد. بر خلاف تکنیک های کلاسیک مجموعه ای که تنها عضویت قطعی در آن ها وجود دارد، در منطق فازی امکان تعریف عضویت نسبی وجود دارد.
در منبع (yuksel and besdok 2004) از یک سیستم فازی عصبی تطبیقی برای آشکار سازی پیکسل نویزی استفاده شده است که شامل دو زیر آشکار گر مبتنی بر شبکه فازی عصبی با منطق فازی نوع سوگنو است که هر کدام از سه ورودی استفاده می کنند. این سه ورودی پیکسل های عمودی و افقی در یک پنجره 3*3 هستند. هر زیر آشکارگر برای هر ورودی سه تابع و سه تابع زنگوله ای برای هر ورودی، 27 قاعده برای تصمیم گیری است.که وزن ها بر اساس شدت آتش هر قاعده تعیین می شود. در نهایت میانگین خروجی دو زیر آشکارگر محاسبه می شود و از یک آستانه نهایی برای تشخیص پیکسل نویزی استفاده می شود.
در فیلتر های حذف نویز، طبقه بندی هر پیکسل با برچسب نویزی یا سالم معمولا از طریق مشاهدات همسایگی پیکسل انجام می شود. یک راه ساده برای طبقه بندی اندازه گیری میزان اختلاف پیکسل مرکزی و خروجی فیلتر میانه است. در صورتی که میزان اختلاف از یک حد آستانه بیشتر باشد، پیکسل به عنوان پیکسل نویزی و در غیر این صورت پیکسل به عنوان سالم بر چسب می خورد. این راه حل در نگاه اول ساده به نظر می رسد، اما تعیین مقدار مناسب آستانه بحث بر انگیز است و تعیین چنین آستانه هایی معمولا امری مشکل است. در یک رویکرد فازی، با استفاده از شروط فازی و توابع عضویت، میزان نویزی بودن هر پیکسل تعیین می شود و می توان از این طبقه بندی هم در بخش طبقه بندی اولیه در سیستم حذف نویز و هم در تخمین مقدار نهایی برای پیکسل نویزی استفاده کرد.
در قسمت های قبل مفاهیم پایه و انواع تصاویر و همچنین مدل های مختلف نویز بررسی شد و تاثیر هر کدام از انواع نویز بر روی تصاویر سطح خاکستری نشان داده شد. هر کدام از انواع نویز تاثیر متفاوتی بر روی کیفیت تصویر اصلی می گذارند و بر همین اساس از رویکرد های متفائتی برای کاهش اثر هر کدام از انواع نویز استفاده می شود. متد های فوق و پایه ای در حذف نویز ضربه در این قسمت مرور شد. در ادامه متدی برای کاهش اثر نویز ضربه بر روی تصاویر دیجیتال بررسی می شود.