بخشی از مقاله

چکیده

تصاویر را می توان به عنوان سیگنال های دو بعدی با فضایی هماهنگ به عنوان متغیرهای مستقل در نظر گرفت. از زمان آغاز پردازش تصویر دیجیتال، فشردهسازی تصویر از مباحث فعال پژوهشی میباشد که به دلیل ذخیره سازی کارآمد و انتقال داده های تصویر بسیار مهم است. تکنیک های زیادی برای فشردهسازی تصویر معرفی شدهاند. در بین تکنیکهای موجود، شبکه های عصبی مصنوعی به دلیل از بین بردن نویز و قابلیت یادگیری، کاربردهای فراوانی دارند.

از نکات مهم در فشردهسازی با شبکهی عصبی مصنوعی، آموزش شبکه میباشد. در این مقاله آموزش شبکهی عصبی برای بلوکبندی 2×2، 4×4، 8×8 و 16×16 پیکسلی و میزان اثر گذاری هر کدام از این بلوکبندیها بر آموزش شبکه عصبی بررسی میشود. نرخ فشردهسازی برای تمام تقسیمبندیها یکسان است و الگوریتم مورد استفاده برای آموزش شبکهی عصبی، الگوریتم BP است. نحوهی آموزش، تعداد تکرارها، تصاویر آموزشی و شفافیت تصویر PSNR بررسی میشوند. همچنین زمان فشردهسازی برای هریک ازبلوکبندیها محاسبه میگردد. بیشترین زمان فشردهسازی مربوط به بلوکبندی 2×2 پیکسلی و بالاترین PSNR برای بلوکبندی 4×4 پیکسلی است.

-1 مقدمه

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

علاوه بر تکنولوژی های موجود ارائه شده در زمینهی فشردهسازی تصویر مانند JPEG تکنولوژی جدیدی به نام شبکه های عصبی در حال توسعه است. شبکههای عصبی مبتنی بر تکنولوژی است که الگوریتم های سنتی را بهبود می بخشند و قابلیت پیشپردازش الگوهای ورودی را برای تولید الگوهای سادهتر با مولفههای کمتر دارند.

تحقیقات زیادی در مورد استفاده از شبکههای عصبی برای فشردهسازی تصویر ارائه شده است از جمله: شبکهی عصبی پس انتشار سلسله مراتبی1 با الگوریتم آموزشی تودرتو NTA [1]، شبکههای عصبی تطبیقی پس انتشار[2,3] 2 ، شبکههای SOM [4,5]، شبکههای تحلیل مولفههای اصلی [6]، همچنین در [7] میتوان ترکیب DCT و شبکهی عصبی را برای فشردهسازی مشاهده کرد.

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

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

تلاشهای فراوانی جهت سرعت بخشیدن به همگرایی و بهبود دقت الگوریتم پس انتشار خطا در آموزش شبکههای عصبی صورت گرفته است که از آن جمله میتوان به الگوریتم نیوتن، گوسی نیوتن وهمچنین الگوریتم [9,10] Levenberg-Marquardt اشاره نمود که بهبود قابل توجهی را میتوان بر روی عملکرد تشخیص مشاهده کرد. در [11,12] برای تسریع در فرآیند یادگیری، منطق فازی با الگوریتمهای یادگیری شبکهی عصبی یکپارچه شده اند.

رویکرد جدید در آموزش شبکههای عصبی استفاده از الگوریتمهای ابتکاری است از جمله: الگوریتم ژنتیک [13] که از تکنیکهای زیستشناسی فراگشتی مانند وراثت و جهش استفاده میکند. الگوریتم بهینه سازی گروه ذرات[14,15, 16] PSO 5 که ازحرکت دسته جمعی پرندگان و ماهیها الهام گرفته است. و همچنین میتوان به الگوریتم [17] PSO-BP و الگوریتم رقابت استعماری[18,19] ICA 6 نیز اشاره نمود.

در [20,21]، به فشردهسازی تصویر سطح خاکستری با شبکه عصبی چندلایه MLP پرداخته شده است که الگوریتم یادگیری برای آموزش شبکهی عصبی، الگوریتم پس انتشار خطا میباشد و آموزش شبکهی عصبی، تنها برای تصویری که به بلوکهای 8×8 پیکسلی تقسیمبندی شده است بررسی میشود که PSNR مناسبی برای این فشردهسازی بهدست میآید.

برای فشردهسازی و اعمال تصویر به شبکهی عصبی تصویر به بلوکهای تقسیمبندی می شود که برای استفاده از هر کدام از این تقسیم بندیها باید شبکه بهطور جداگانه آموزش ببیند. در این مقاله ما به بررسی آموزش شبکه عصبی برای تصویری که به بلوکهای 2×2، 4×4 ، 8×8 و 16×16 پیکسلی تقسیمبندی شده است میپردازیم و مزایا و معایب هر کدام از بلوکبندیها را بررسی میکنیم. بیشترین تکراری که برای آموزش شبکهی عصبی در نظر گرفته شده، 100 تکرار میباشد.

لازم به ذکر است که در تکرارهای بالاتر مثل 1000 جواب مطلوبی از PSNR بهدست نمیآید یعنی شبکهی عصبی به درستی آموزش ندیده است. با توجه به PSNR بهدست آمده مشخص میشود که بهترین عملکرد فشردهسازی در تکرار 50ام برای تصویری که به بلوکهای 4×4 پیکسلی تقسیمبندی شده میباشد و سپس بهترین عملکرد فشردهسازی بهترتیب برای تصویری است که به بلوکهای 8×8، 2×2 و 16×16 پیکسلی تقسیمبندی میشود. همچنین زمان فشردهسازی را برای هر کدام از بلوکبندی ها بررسی میکنیم. بهطوریکه زمان فشرده سازی به ترتیب برای بلوکبندی 16×16 ، 8×8 ، 4×4 و 2×2 پیکسلی افزایش مییابد.

-2 فشرده سازی تصویر با شبکهی عصبی چند لایه MLP

شبکهی عصبی چند لایه 7 - MLP - به طور مستقیم برای فشرده سازی تصویر اعمال میشود .

شکل : - 1 - شبکهی عصبی چند لایه [21] MLP

در شکل - 1 - نشان داده شده است. همانطور که در شکل مشخص است، شبکه عصبی چند لایهی مذکور در سه لایه طراحی شده است. لایهی ورودی، لایهی پنهان و لایهی خروجی. لایهی ورودی و لایهی خروجی دارای اتصالات کامل با لایهی پنهان هستند.

تعداد نورونها در لایهی ورودی، N تا است که با تعداد نورونها در لایهی خروجی برابر است و همچنین تعداد نورونها درلایهی پنهان برابر با مقدار K است. لازم به ذکر است که تعداد نورونهای لایهی پنهان کمتر از تعداد نورونهای لایهی ورودی ولایهی خروجی می باشد. فشرده سازی با تعیین مقدار K - تعداد نورونها در لایهی پنهان - بهدست میآید.

جفت وزنهای لایهی ورودی به لایهی پنهان می باشد که میتوان آن را به صورت یک ماترس K×N توصیف کرد و همچنین جفت وزنهای لایهی پنهان به لایهی خروجی است و میتوان آن را به صورت یک ماترس N×K نوشت.
برای فشردهسازی، تصویر ورودی را به بردارها یا بلوکهای غیر همپوشانی با اندازهی - T×T - ، به طور مثال، 2×2، 4×4، 8×8 یا 16×16 پیکسلی تقسیمبندی میکنیم.

ورودی شبکهی عصبی، یک بردار -Nبعدی است. یعنی یک بلوک از پیکسلهایی که از تصویر استخراج شدهاند. درواقع تعداد نورونها در لایهی ورودی و لایهی خروجی با تعداد پیکسلهای موجود در هر بلوک برابر است. وزنهای ، بردار ورودی -Nبعدی را به یک کانال باریک -Kبعدی در لایه مخفی نگاشت میکند که K<N میباشد. در نهایت مقدار خروجی بهینهای را تولید میکند که باعث میشود میانگین مربعات خطا بین ورودی و خروجی به حداقل برسد.

مطابق با ساختار شبکهی عصبی نشان داده شده در شکل 1 - - ، خروجی لایهی پنهان برای کدگذاری8 از رابطهی - 1 - بهدست میآید.
    
به طورمشابه خروجی لایه خروجی برای کدگشایی9 از رابطهی - 2 - به دست میآید.

پس با توجه به معادلات - 1 - و - 2 - تصویر فشرده شده را از خروجی لایهی پنهان و تصویر بازسازی شده را از خروجی لایهی خروجی به دست میآوریم و برای محاسبهی مقدار خروجی نورونهای لایههای پنهان و خروجی از تابع سیگموئید استفاده میکنیم.

برای اینکه شبکه کارایی بهتری از خود نشان دهد، ورودی و خروجی شبکه عصبی را به مقادیری در بازهی 1]،[0 محدود میکنیم، از این رو میتوانیم سطوح خاکستری درتصویر - که معمولا در بازهی 0 تا 255 قرار دارند - را به بزرگترین مقدار پیکسل موجود در تصویر تقسیم کرده و تصویر نرمالیزه شده را به شبکه اعمال نماییم.

فشرده سازی تصویر با آموزش دادن شبکه به دست میآید. برای آموزش شبکهی عصبی از الگوریتم پس انتشار خطا استفاده میکنیم.

از هر الگوریتم آموزشی که برای آموزش شبکهی عصبی چند لایه استفاده میکنیم، باید مجموعهای به عنوان مجموعهی آموزشی در نظر بگیریم که متشکل از چند تصویر از پیش شناخته شده میباشد. با استفاده از این تصاویر شبکهی عصبی را آموزش میدهیم و با مجوعهای دیگر به نام مجموعهی تست شامل تصاویری به غیر از تصاویر موجود در مجموعهی آموزشی شبکه را آزمایش میکنیم. اگر آموزش شبکه به درستی صورت گیرد و وزنهای شبکه به درستی انتخاب شوند، شفافیت تصویر بهتر خواهد بود.

معیار سنجش میزان شباهت تصویر بازسازی شده نسبت به تصویر اولیه با استفاده از روابط PSNR و NMSE بهدست میآید.

بهطوریکه   ارزش شدت پیکسل در تصویر اصلی و ̅̅̅̅ ارزش شدت

  پیکسل در تصویر بازسازی شده میباشد. لازم به ذکر است که تصویر اصلی به n بردار با N مولفه تقسیم بندی میشود. در ضمن میتوان به جای روابط بالا از رابطهی SNR نیز استفاده نمود.

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

با استفاده از نرم افزار متلب به آموزش شبکه عصبی میپردازیم که در ابتدا برای آموزش، یک تصویر آموزشی از سایز 256×256 را که در شکل - 2 - مشاهده میکنید، در نظر میگیریم.

شکل : - 2 - یک تصویر آموزشی - Fruit -

تمام تصاویر مورد استفاده در این کارهم برای مجموعهی آموزشی و هم برای مجموعهی تست، تصاویر سطح خاکستری میباشند. نحوهی کار بدین صورت است که تعداد تکرارها را 100 در نظر میگیریم و در هر تکرار، از یک تا PSNR 100 را برای چهار تصویر مختلف که در شکل - 3 - نشان داده شده است، محاسبه میکنیم.

در متن اصلی مقاله به هم ریختگی وجود ندارد. برای مطالعه بیشتر مقاله آن را خریداری کنید