توضیحات
نویز در تصاویر دیجیتال — بهویژه نویز فرکانس پایین (coarse-grain) که در دوربینهای دیجیتال رایج است — با فیلترهای ساده قابل حذف نیست، چون در سطح اصلی تصویر با اطلاعات واقعی تصویر درهم میآمیزد. این پروژه روش فیلتر بیلاترال چندرزولوشنی را پیادهسازی میکند که با تجزیه موجک، این نویز را در سطوح پایینتر به نویز فرکانس بالا تبدیل کرده و بهراحتی حذف میکند.
توضیحات
شبیهسازی حذف نویز تصویر با فیلتر بیلاترال چندرزولوشنی و آستانهگذاری موجک در متلب
عنوان اصلی مقاله:
Multiresolution Bilateral Filtering for Image Denoising
شبیهسازی در محیط M-file متلب انجام شده است. گزارش فارسی توضیح کامل الگوریتم، کد و نتایج را همراه دارد.
ترجمه تخصصی چکیده
فیلتر بیلاترال یک فیلتر غیرخطی است که میانگینگیری فضایی را بدون هموارسازی لبهها انجام میدهد و بهعنوان یک تکنیک مؤثر حذف نویز تصویر شناخته شده است. یک مسئله مهم در کاربرد فیلتر بیلاترال، انتخاب پارامترهای فیلتر است که نتایج را بهطور قابل توجهی تحت تأثیر قرار میدهد. دو مشارکت اصلی این مقاله وجود دارد: مشارکت اول یک مطالعه تجربی از انتخاب بهینه پارامترهای فیلتر بیلاترال در کاربردهای حذف نویز تصویر است. مشارکت دوم یک توسعه از فیلتر بیلاترال است — فیلتر بیلاترال چندرزولوشنی — که در آن فیلترینگ بیلاترال روی زیرباندهای تقریبی (فرکانس پایین) یک سیگنال تجزیهشده با بانک فیلتر موجک اعمال میشود. فیلتر بیلاترال چندرزولوشنی با آستانهگذاری موجک ترکیب میشود تا یک چارچوب جدید حذف نویز تصویر تشکیل دهد که در حذف نویز از تصاویر واقعی نویزدار بسیار مؤثر است.
توضیحات شبیهسازی فیلتر بیلاترال چندرزولوشنی در MATLAB
در این پروژه روش پیشنهادی مقاله بهطور کامل در MATLAB پیادهسازی شده است. ایده اصلی این است که نویز فرکانس پایین در سطح اصلی تصویر با اطلاعات واقعی تصویر درهم میآمیزد و سخت حذف میشود؛ اما پس از تجزیه موجک (db8) به زیرباندهای تقریبی، این نویز بهصورت نویز فرکانس بالا ظاهر شده و بهراحتی قابل حذف است.
پردازش در فضای رنگی L\*a\*b\* انجام میشود نه RGB، چون انسان نسبت به نویز رنگی (کانالهای a\* و b\*) حساستر از نویز روشنایی (کانال L\*) است. به همین دلیل کانالهای رنگی با ۴ سطح تجزیه و کانال روشنایی با ۲ سطح تجزیه پردازش میشوند.
موضوعات مورد بررسی در پروژه
- پیادهسازی فیلتر بیلاترال (Bilateral Filter) با پارامترهای sigma_d و sigma_r در MATLAB
- تجزیه موجک گسسته دوبعدی (DWT2) با فیلتر Daubechies 8 (db8) تا سطوح مختلف
- آستانهگذاری نرم (Soft Thresholding) روی ضرایب جزئیات موجک (cH، cV، cD)
- تخمین انحراف استاندارد نویز با برآوردگر مقاوم مدیان: σ̂ = median(|cD|)/0.6745
- تبدیل فضای رنگی از RGB به L\*a\*b\* و بازگشت به RGB
- پردازش مستقل هر کانال رنگی با سطوح تجزیه متفاوت: L=[2,4,4]
- بازسازی بازگشتی تصویر از سطح L تا سطح ۱ با IDWT2
- اعمال فیلتر بیلاترال روی زیرباندهای تقریبی (approximation subbands) در هر سطح
مشخصات فنی پروژه
نرمافزار مورد استفاده:
MATLAB + Wavelet Toolbox + Image Processing Toolbox
فایلهای اصلی و پارامترهای کلیدی:
- mainprog.m — فایل اصلی اجرایی؛ تمام مراحل حذف نویز با اجرای این فایل انجام میشود
- genrat_bilateral.m — تابع فیلتر بیلاترال: محاسبه وزنهای فضایی و شدت برای هر پیکسل
- wave.m — تابع تجزیه موجک DWT2 تا سطح دلخواه
- softthresholding.m — تابع آستانهگذاری نرم روی ضرایب موجک
- IMG_65.jpg — تصویر واقعی نویزدار از دوربین دیجیتال
- lena.jpg — تصویر استاندارد آزمایشی
- پارامترهای اصلی: sigma_d=1.8، window_d=5، dec=’db8’، L=[2,4,4]
این شبیهسازی برای چه کسانی مناسب است؟
این پروژه برای پژوهشگران و علاقهمندان به حوزههای زیر کاربرد دارد:
- پژوهشگران پردازش تصویر و حذف نویز از تصاویر دیجیتال
- علاقهمندان به فیلترهای غیرخطی و حفظ لبه در پردازش تصویر
- متخصصان تبدیل موجک و کاربردهای آن در پردازش تصویر
- پژوهشگران فضاهای رنگی و پردازش تصویر رنگی
- مهندسانی که با تصاویر واقعی نویزدار دوربینهای دیجیتال کار میکنند
فایلهای موجود در پروژه
پس از خرید، فایلهای زیر در اختیار شما قرار میگیرد:
- mainprog.m — فایل اصلی اجرایی
- genrat_bilateral.m — تابع فیلتر بیلاترال
- wave.m — تابع تجزیه موجک
- softthresholding.m — تابع آستانهگذاری نرم
- IMG_65.jpg — تصویر واقعی نویزدار
- lena.jpg — تصویر استاندارد آزمایشی
- گزارش فارسی — شامل توضیح کامل الگوریتم، کد و تحلیل نتایج
نتایج قابل مشاهده
با اجرای فایل mainprog.m دو پنجره تصویر بهصورت خودکار نمایش داده میشود:
تصویر اول — تصویر اصلی نویزدار
- تصویر واقعی دوربین دیجیتال (IMG_65.jpg) با نویز طبیعی coarse-grain
- نویز فرکانس پایین در کانالهای رنگی بهصورت الگوهای رنگی ناخواسته مشهود است

✅ تصویر ورودی نویزدار — ناحیه ۵۱۲×۵۱۲ از تصویر واقعی دوربین
تصویر دوم — تصویر فیلترشده
- تصویر پس از اعمال فیلتر بیلاترال چندرزولوشنی با پارامترهای L=[2,4,4] و dec=’db8′
- نویز coarse-grain کانالهای رنگی بهطور چشمگیری کاهش یافته است
- لبهها و جزئیات تصویر حفظ شدهاند

✅ تصویر خروجی پس از فیلتر — نویز رنگی حذف شده و لبهها حفظ شدهاند
علاوه بر این، با تغییر پارامتر L در فایل mainprog.m میتوان سطوح تجزیه مختلف را آزمایش کرد و تأثیر آن را بر کیفیت حذف نویز مشاهده کرد.
پرسشهای متداول
چه Toolboxهایی نیاز است؟
Wavelet Toolbox (برای توابع dwt2 و idwt2) و Image Processing Toolbox (برای توابع makecform و applycform) هر دو لازم هستند. این دو Toolbox معمولاً در نسخههای استاندارد MATLAB موجود هستند.
چطور برنامه را اجرا کنم؟
تمام فایلها را در یک پوشه قرار دهید و فایل mainprog.m را اجرا کنید. نیازی به تنظیم اضافی نیست.
زمان اجرا چقدر است؟
به دلیل پردازش پیکسل به پیکسل در تابع genrat_bilateral، اجرا برای تصویر ۵۱۲×۵۱۲ چند دقیقه طول میکشد. این رفتار طبیعی است.
آیا میتوانم از تصویر دیگری استفاده کنم؟
بله. خط ۱۰ برنامه (دستور برش تصویر) را کامنت کنید و نام تصویر دلخواه را در خط ۸ وارد کنید. برای تصاویر بزرگ ممکن است پیام هشدار نمایشی ظاهر شود که خطای برنامه نیست.
آیا نتایج با مقاله مطابقت دارد؟
بله. پارامترهای پیشفرض (sigma_d=1.8، L=[2,4,4]، dec=’db8′) دقیقاً مطابق روش پیشنهادی مقاله تنظیم شدهاند. کد محاسبه PSNR نیز در انتهای mainprog.m بهصورت کامنت موجود است.
فیلتر موجک را میتوانم تغییر دهم؟
بله. متغیر dec در خط ۳۳ قابل تغییر است. گزینههای دیگر: ‘db4’ و ‘sym8’. مقاله استفاده از db8 را توصیه میکند.
مزایای پروژه
- پیادهسازی کامل روش پیشنهادی مقاله با پارامترهای دقیق ذکرشده در متن مقاله
- استفاده از تصویر واقعی دوربین دیجیتال (نه تصویر مصنوعی نویزدار)
- پردازش در فضای رنگی L\*a\*b\* با سطوح تجزیه متفاوت برای کانال روشنایی و رنگی
- ساختار ماژولار — چهار فایل مجزا با وظایف مشخص، قابل استفاده مستقل
- گزارش فارسی با توضیح کامل ریاضی الگوریتم و شرح کد
نکات مهم
۱. زمان اجرا: پردازش تصویر ۵۱۲×۵۱۲ به دلیل ماهیت حلقه پیکسل به پیکسل چند دقیقه طول میکشد. این از ویژگیهای پیادهسازی مستقیم فیلتر بیلاترال است.
۲. Toolbox لازم: دو Toolbox ذکرشده (Wavelet و Image Processing) الزامی هستند. بدون آنها برنامه اجرا نمیشود.
۳. برش تصویر: خط ۱۰ برنامه تصویر را به ناحیه ۵۱۲×۵۱۲ مشخصی برش میزند تا دقیقاً با تصویر مقاله مطابقت داشته باشد. برای سایر تصاویر این خط را کامنت کنید.
۴. مقایسه PSNR: کد محاسبه PSNR در انتهای mainprog.m کامنت شده است. برای فعالسازی، علامت % را از جلوی خطوط ۸۹ به بعد بردارید — اما توجه کنید که این مقایسه بین تصویر ورودی و خروجی است، نه بین تصویر بدون نویز و خروجی.
شاید به موارد زیر نیز علاقهمند باشید:
- شبیهسازی حذف نویز و بهبود تصویر ماموگرافی با فیلتر موجک و هومومورفیک در متلب
- شبیهسازی فیلتر تطبیقی حذف نویز ضربهای با حفظ جزئیات در متلب
- شبیهسازی فیلتر اسپکل Nonlocal Means برای تصاویر اولتراسوند در متلب
شبیهسازی حذف نویز تصویر با فیلتر بیلاترال چندرزولوشنی و آستانهگذاری موجک در متلب
طبق توضیحات فوق توسط کارشناسان سایت متلبی تهیه شده است و به تعداد محدودی قابل فروش میباشد.
سفارش انجام پروژه مشابه
درصورتیکه این محصول دقیقاً مطابق خواسته شما نمیباشد،
با کلیک بر روی کلید زیر پروژه دلخواه خود را سفارش دهید.






