شبکه عمیق خودرمزنگار برای بازسازی و رفع نویز تصاویر

 icon-cny کاهش نویز یک فرآیند حذف نویز از سینگال است‌.این سیگنال می‌تواند مربوط به یک تصویر، ویدئو یا یک فایل صوتی باشد. تمام دستگاه‌های ضبط کردن ویژگی هایی دارند که آن‌ها را در معرض نویز قرار می‌دهد.نویز میتواند بصورت رندوم یا نویز سفید (به سیگنالی گفته می‌شود که در تابع چگالی توان آن ، توان به‌طور یکنواخت در همهٔ فرکانس‌ها توزیع شده ‌باشد) باشد.

هدف از از بین‌بردن نویز‌ها از سیگنال ،بازسازی تصویرِ تحریف شده و برگرداندن آن به حالت اصلیَش بر اساس مدل‌های ایده‌آل است که روشهای مختلفی برای حذف نویز هم در حوزه فرکانس  و هم در حوزه مکان وجود داره.

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

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

 icon-pencil-square حذف نویز با روش های یادگیری عمیق

شبکه های عمیق کاربرد زیادی در زمینه های مختلف دارند و نتایج خیلی خوبی را تولید می کنند. یکی از شبکه های عمیق پرکاربرد که بیشتر برای حذف نویز و بازسازی تصاویر استفاده می شود، شبکه های خودرمزنگار عمیق یا Autoencoder هستند که شبکه های Autoencoder از شبکه های بدون ناظر به حساب می آید. Autoencoder نوعی از شبکه عصبی است که برای encode کردن بهینه یادگیری مورد استفاده قرار میگیرد. تفاوت این نوع شبکه ها با شبکه های دیگر بدون ناظر در این است که شبکه های خود رمزگذار از توزیع های احتمالی برای آموزش بدون ناظر استفاده نمیکند بلکه به روش مشابه شبکه های با ناظر عمل می کند. یعنی یک هدف دارد و با استفاده از روش گرادیان نزولی و پس انتشار خطا آموزش می بیند، اما هدف آن خود ورودی می باشد و به همین دلیل روش آن را بدون ناظر در نظر می گیرند. بجای آموزش شبکه و پیش بینی مقدار هدف Y در ازای ورودی X , یک autoencoder آموزش میبینید تا ورودی X خود را بازسازی کند. بنابراین بردارهای خروجی  همان ابعاد بردار ورودی را خواهند داشت. در حین این فرآیند, autoencoder با کمینه سازی خطای نوسازی (reconstruction error) بهینه میشود. یک Autoencoder عمیق اغلب با گونه ای از back-propagation مثل روش conjugate gradient آموزش میبینید. هرچند اغلب این مدل کارآمد و موثر است , اما درصورت وقوع خطا در لایه های اول میتواند بشدت ناکارآمد شود. این مسئله ممکن است باعث شود تا شبکه میانگین داده های آموزشی را بازسازی کند. یک روش مناسب جهت حذف این مشکل پیش آموزش (pre-training) شبکه با وزن های اولیه که راه حل نهایی را تقریب میزنند است.

 icon-picture-o شبکه های عصبی  Autoencoder شبکه های هستند که برای استخراج ویژگی و عملیات reconstruction از آنها استفاده می شود.  زمانی استفاده می شوند که داده های هدف موجود نباشد و تنها بر اساس داده های ورودی آموزش را انجام دهیم. همچنین زمانی که ویژگی های غیر مرتبط فراوانی موجود باشد که به صورت دستی تشخیص و جداسازی آن ها دشوار است. شبکه های خود رمزگذار به دلیل عملیات reconstruction  در تشخیص چهره و حذف نویز و بازسازی تصاویر و فشرده سازی تصاویر بسیار کاربرد دارند.

 icon-youtube هدف اصلی از این پروژه استفاده از شبکه عمیق خودرمزنگار برای بازسازی و رفع نویز تصاویر با زبان برنامه نویسی پایتون می باشد. در این پروژه از شبکه خودرمزنگار عمیق برای پیاده سازی یک سیستم رفع نویز و بازیابی تصویر استفاده می شود. پروژه خط به خط توضیح داده شده است و نکات پیرامون بحث گفته شده است. بدون شک یکی از بهترین پروژه های عمیق برای بازیابی و رفع نویز تصاویر است.

 icon-wrench موارد موجود در این فایل آموزشی:

 معرفی کامل نویز و بازسازی تصویر

  معرفی شبکه عمیق خودرمزنگار

  پیاده سازی شبکه عمیق خودرمزنگار با keras

  آموزش ایجاد لایه های عمیق

  آموزش ایجاد مدل بدون ناظر عمیق

  تغییر ابعاد و نرمال سازی داده ها

  آموزش تنظیم پارامترهای مدل بدون ناظر عمیق

  آموزش شبکه عمیق

  تعیین داده های اموزشی و تست

  پیاده سازی خودرمزنگار برای بازسازی تصویر

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

  نمایش خروجی ها شبکه برای حذف نویز

  نمایش خروجی ها شبکه برای بازسازی تصویر

  معرفی Google Colab برای اجرای پروژه پایتون روی GPU گوگل

  کدهای پروژه پیوست دانلود می باشد

  فیلم آموزشی کامل پیوست دانلود می باشد.

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

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

  1. قادر :
    16 آگوست 2019

    پروژه و توضیحات مدرس عالی بود. ممنون

  2. حامد :
    16 آگوست 2019

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

  3. شیوا :
    16 آگوست 2019

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

0