متعادلسازی هیستوگرام (به انگلیسی: Histogram equalization) یا یکسانسازی هیستوگرام یا یکسانسازی بافتنگاشت روشی در پردازش تصویرِ تنظیم کنتراست با استفاده از بافتنگاشت تصویر است.
نمایکلی
این روش معمولاً کنتراست کلی بسیاری از تصاویر را افزایش میدهد، به خصوص زمانی که تصویر با محدوده باریکی از مقادیر شدت نمایش داده میشود. از طریق این تنظیم، شدتها را میتوان بهتر در بافتنگاشت با بکارگیری از طیف کامل شدتها بهطوریکنواخت توزیع کرد. این اجازه میدهد تا ناحیههایی با کنتراست محلی کمتر کنتراست بالاتری بهدست آورند. یکسانسازی بافتنگاشت با پخش مؤثر مقادیر شدت بسیار پرجمعیت که برای کاهش کنتراست تصویر استفاده میشود، این کار را انجام میدهد.
اصلاحات این روش از بافتنگاشتهای متعدد، به نام زیربافتنگاشت، برای تأکید (به انگلیسی: emphasize) بر کنتراست محلی، به جای کنتراست کلی سراسری استفاده میکند. نمونههایی از این روشها عبارتند از : یکسانسازی بافتنگاشت تطبیقی، یکسانسازی بافتنگاشت تطبیقی محدودسازی کنتراست یا CLAHE، یکسانسازی بافتنگاشت چندقلهای (MPHE) و یکسانسازی دوبافتنگاشت بهینهٔ بتای چندمنظوره (MBOBHE). هدف این روشها، به ویژه MBOBHE، بهبود کنتراست بدون ایجاد تغییرات میانگین روشنایی و کاهش جزئیات با اصلاح الگوریتم HE است.[۱]
به نظر میرسد یک تبدیل سیگنال همارز یکسانسازی بافتنگاشت نیز در شبکههای عصبی بیولوژیکی اتفاق میافتد تا نرخ آتش (به انگلیسی: firing rate) خروجیِ نورون را به عنوان تابعی از آمار ورودی به حداکثر برساند. این به ویژه در شبکیه مگس ثابت شدهاست.[۲]
پس افکنش
پس افکنش (به انگلیسی: back projection) (یا "افکنش") یک تصویر هیستوگرام شده، اعمال مجدد هیستوگرام اصلاح شده به تصویر اصلی است که به عنوان یک جدول جستجو (به انگلیسی: look-up table) برای مقادیر روشنایی پیکسل عمل میکند.
برای هر گروه از پیکسلها که از یک موقعیت از همه تصاویر تک کانال ورودی گرفته میشود، تابع مقدار خانک (به انگلیسی: bin) هیستوگرام را به تصویر مقصد میگذارد، جایی که مختصات خانک با مقادیر پیکسلهای این گروه ورودی تعیین میشود. از نظر آماری، مقدار هر پیکسل تصویر خروجی، احتمال تعلق گروه پیکسل ورودی مربوطه به شیئی را که هیستوگرام آن استفاده شدهاست، مشخص میکند.[۳]
پیادهسازی
یک تصویر گسسته در مقیاس خاکستری {x} را در نظر بگیرید و اجازه دهید ni تعداد رخدادهای سطح خاکستری i باشد. احتمال وقوع یک پیکسل از سطح i در تصویر، است
تعداد کل سطوح خاکستری در تصویر (معمولاً ۲۵۶)، n تعداد کل پیکسلهای تصویر، و در واقع هیستوگرام تصویر برای مقدار پیکسل i است که به [۰٬۱] بهنجارشده (به انگلیسی: normalized) است.
اجازه دهید تابع توزیع تجمعی مربوط به i را نیز تعریف کنیم
که همچنین هیستوگرام بهنجارشده تجمعی تصویر است.
ما میخواهیم یک تبدیل برای تولید یک تصویر جدید {y}، با هیستوگرام مسطح ایجادکنیم. چنین تصویری یک تابع توزیع تجمعی خطیسازیشده (CDF) در سراسر محدوده مقدار خواهد داشت، به عنوان مثال
- برای
برای مقداری ثابت . ویژگیهای CDF به ما امکان میدهد چنین تبدیلی را انجام دهیم (به تابع توزیع وارون مراجعه کنید). به این صورت تعریف شدهاست
در اینجا در محدوده است. توجه کنید که از آنجایی که از هیستوگرام بهنجارشده {x} استفاده کردیم، سطوح را در محدوده [۰٬۱] نگاشت میکند. برای نگاشت (به انگلیسی: map) مقادیر به محدوده اصلی خود، تبدیل ساده زیر باید روی نتیجه اعمال شود:
- .
مشتق دقیق تر در اینجا ارائه شده است.
یک مقدار حقیقی است در حالی که باید یک عدد صحیح باشد یک روش بصری و محبوب[۴] استفاده از عمل گردکردن است:
- .
با این حال، تجزیه و تحلیل دقیق به فرمول اندکی متفاوت منجر میشود. مقدار نگاشت شده باید برای محدوده ، ۰ باشد. و برای ، برای ، .... ، و درنهایت برای . سپس فرمول کمّیسازی از به باید باشد
.
(توجه داشته باشید: زمانی که ، با این حال، این اتفاق نمیافتد فقط به این دلیل به این معنی است که هیچ پیکسلی مطابق با آن مقدار وجود ندارد)
مثالها
برای سازگاری با استفاده آماری، «سیدیاف» (یعنی تابع توزیع تجمعی) باید با «هیستوگرام تجمعی» جایگزین شود، به خصوص که مقاله به تابع توزیع تجمعی پیوند میخورد که از تقسیم مقادیر در هیستوگرام تجمعی بر مقدار کلی پیکسلها به دست میآید. سیدیاف متعادلشده برحسب رتبه تعریف میشود.
تصویر کوچک
تصویر ۸ بیتی در مقیاس خاکستری نشان داده شده دارای مقادیر زیر است:
۵۲ | ۵۵ | ۶۱ | ۵۹ | ۷۹ | ۶۱ | ۷۶ | ۶۱ |
---|---|---|---|---|---|---|---|
۶۲ | ۵۹ | ۵۵ | ۱۰۴ | ۹۴ | ۸۵ | ۵۹ | ۷۱ |
۶۳ | ۶۵ | ۶۶ | ۱۱۳ | ۱۴۴ | ۱۰۴ | ۶۳ | ۷۲ |
۶۴ | ۷۰ | ۷۰ | ۱۲۶ | ۱۵۴ | ۱۰۹ | ۷۱ | ۶۹ |
۶۷ | ۷۳ | ۶۸ | ۱۰۶ | ۱۲۲ | ۸۸ | ۶۸ | ۶۸ |
۶۸ | ۷۹ | ۶۰ | ۷۰ | ۷۷ | ۶۶ | ۵۸ | ۷۵ |
۶۹ | ۸۵ | ۶۴ | ۵۸ | ۵۵ | ۶۱ | ۶۵ | ۸۳ |
۷۰ | ۸۷ | ۶۹ | ۶۸ | ۶۵ | ۷۳ | ۷۸ | ۹۰ |
هیستوگرام این تصویر در جدول زیر نشان داده شدهاست. مقادیر پیکسلی که تعداد آنها صفر است به خاطر اختصار مستثنی هستند.
مقدار | تعداد | مقدار | تعداد | مقدار | تعداد | مقدار | تعداد | مقدار | تعداد |
---|---|---|---|---|---|---|---|---|---|
۵۲ | ۱ | ۶۴ | ۲ | ۷۲ | ۱ | ۸۵ | ۲ | ۱۱۳ | ۱ |
۵۵ | ۳ | ۶۵ | ۳ | ۷۳ | ۲ | ۸۷ | ۱ | ۱۲۲ | ۱ |
۵۸ | ۲ | ۶۶ | ۲ | ۷۵ | ۱ | ۸۸ | ۱ | ۱۲۶ | ۱ |
۵۹ | ۳ | ۶۷ | ۱ | ۷۶ | ۱ | ۹۰ | ۱ | ۱۴۴ | ۱ |
۶۰ | ۱ | ۶۸ | ۵ | ۷۷ | ۱ | ۹۴ | ۱ | ۱۵۴ | ۱ |
۶۱ | ۴ | ۶۹ | ۳ | ۷۸ | ۱ | ۱۰۴ | ۲ | ||
۶۲ | ۱ | ۷۰ | ۴ | ۷۹ | ۲ | ۱۰۶ | ۱ | ||
۶۳ | ۲ | ۷۱ | ۲ | ۸۳ | ۱ | ۱۰۹ | ۱ |
تابع توزیع تجمعی در زیر نشان داده شدهاست. مجدداً، مقادیر پیکسلی که به افزایش سیدیاف کمک نمیکنند برای اختصار مستثنی هستند.
v, شدت پیکسل | سیدیاف(v) | h(v), متعادلسازی شده v |
---|---|---|
۵۲ | ۱ | ۰ |
۵۵ | ۴ | ۱۲ |
۵۸ | ۶ | ۲۰ |
۵۹ | ۹ | ۳۲ |
۶۰ | ۱۰ | ۳۶ |
۶۱ | ۱۴ | ۵۳ |
۶۲ | ۱۵ | ۵۷ |
۶۳ | ۱۷ | ۶۵ |
۶۴ | ۱۹ | ۷۳ |
۶۵ | ۲۲ | ۸۵ |
۶۶ | ۲۴ | ۹۳ |
۶۷ | ۲۵ | ۹۷ |
۶۸ | ۳۰ | ۱۱۷ |
۶۹ | ۳۳ | ۱۳۰ |
۷۰ | ۳۷ | ۱۴۶ |
۷۱ | ۳۹ | ۱۵۴ |
۷۲ | ۴۰ | ۱۵۸ |
۷۳ | ۴۲ | ۱۶۶ |
۷۵ | ۴۳ | ۱۷۰ |
۷۶ | ۴۴ | ۱۷۴ |
۷۷ | ۴۵ | ۱۷۸ |
۷۸ | ۴۶ | ۱۸۲ |
۷۹ | ۴۸ | ۱۹۰ |
۸۳ | ۴۹ | ۱۹۴ |
۸۵ | ۵۱ | ۲۰۲ |
۸۷ | ۵۲ | ۲۰۶ |
۸۸ | ۵۳ | ۲۱۰ |
۹۰ | ۵۴ | ۲۱۵ |
۹۴ | ۵۵ | ۲۱۹ |
۱۰۴ | ۵۷ | ۲۲۷ |
۱۰۶ | ۵۸ | ۲۳۱ |
۱۰۹ | ۵۹ | ۲۳۵ |
۱۱۳ | ۶۰ | ۲۳۹ |
۱۲۲ | ۶۱ | ۲۴۳ |
۱۲۶ | ۶۲ | ۲۴۷ |
۱۴۴ | ۶۳ | ۲۵۱ |
۱۵۴ | ۶۴ | ۲۵۵ |
(لطفا توجه داشته باشید که صورت هنوز نمایش داده نشدهاست)
این سیدیاف نشان میدهد که حداقل مقدار در این زیرتصویر، ۵۲ است و حداکثر مقدار، ۱۵۴ است. سیدیاف ۶۴ برای مقدار ۱۵۴ با این تعداد پیکسلهای تصویر منطبق است. سیدیاف باید به بهنجار شود. فرمول یکسانسازی هیستوگرام کلی به صورت زیر است:
در اینجا cdfmin حداقل مقدار غیر صفر تابع توزیع تجمعی است (در این مورد ۱ است)، M × N تعداد پیکسلهای تصویر را نشان میدهد (برای مثال بالای ۶۴، جایی که M عرض و N ارتفاع است) و L تعداد سطوح خاکستری استفاده شده (در بیشتر موارد، مانند این، ۲۵۶) است.
{{سخ}}توجه داشته باشید که برای مقیاسبندی مقادیر در دادههای اصلی که بالاتر از ۰ هستند تامحدوده ۱ تا L-1 شامل، معادله بالا در عوض به صورت زیر خواهد بود:
در اینجا cdf(v) > 0. مقیاسبندی از ۱ تا ۲۵۵، غیرصفر بودن مقدار حداقل را حفظ میکند.
{{سخ}}فرمول یکسانسازی برای مثال مقیاس دادهها از ۰ تا ۲۵۵، شامل:
مثلاً سیدیاف ۷۸، ۴۶ است. (مقدار ۷۸ در ردیف پایین ستون ۷ استفاده میشود) مقدار بهنجارشده تبدیل میشود
هنگامی که این کار انجام شد، مقادیر تصویر متعادلسازیشده مستقیماً از سیدیاف بهنجارشده گرفته میشود تا مقادیر برابر شده را به دست آورند:
۰ | ۱۲ | ۵۳ | ۳۲ | ۱۹۰ | ۵۳ | ۱۷۴ | ۵۳ |
---|---|---|---|---|---|---|---|
۵۷ | ۳۲ | ۱۲ | ۲۲۷ | ۲۱۹ | ۲۰۲ | ۳۲ | ۱۵۴ |
۶۵ | ۸۵ | ۹۳ | ۲۳۹ | ۲۵۱ | ۲۲۷ | ۶۵ | ۱۵۸ |
۷۳ | ۱۴۶ | ۱۴۶ | ۲۴۷ | ۲۵۵ | ۲۳۵ | ۱۵۴ | ۱۳۰ |
۹۷ | ۱۶۶ | ۱۱۷ | ۲۳۱ | ۲۴۳ | ۲۱۰ | ۱۱۷ | ۱۱۷ |
۱۱۷ | ۱۹۰ | ۳۶ | ۱۴۶ | ۱۷۸ | ۹۳ | ۲۰ | ۱۷۰ |
۱۳۰ | ۲۰۲ | ۷۳ | ۲۰ | ۱۲ | ۵۳ | ۸۵ | ۱۹۴ |
۱۴۶ | ۲۰۶ | ۱۳۰ | ۱۱۷ | ۸۵ | ۱۶۶ | ۱۸۲ | ۲۱۵ |
توجه داشته باشید که حداقل مقدار (۵۲) اکنون ۰ و حداکثر مقدار (۱۵۴) اکنون ۲۵۵ است.
اصلی | متعادلسازیشده |
بافتنگاشت تصویر اصلی | بافتنگاشت تصویر متعادلسازی شده |
تصویر در اندازه کامل
جستارهای وابسته
یادداشت
- ↑ Hum, Yan Chai; Lai, Khin Wee; Mohamad Salim, Maheza Irna (11 October 2014). "Multiobjectives bihistogram equalization for image contrast enhancement". Complexity. 20 (2): 22–36. Bibcode:2014Cmplx..20b..22H. doi:10.1002/cplx.21499.
- ↑ Laughlin, S.B (1981). "A simple coding procedure enhances a neuron's information capacity". Z. Naturforsch. 9–10(36):910–2.
- ↑ Intel Corporation (2001). "Open Source Computer Vision Library Reference Manual" (PDF). Retrieved 2015-01-11.
{{cite journal}}
: Cite journal requires|journal=
(help)[پیوند مرده] - ↑ Gonzalez, Rafael C. (2018). Digital image processing. Richard E. Woods (4th ed.). New York, NY: Pearson. pp. 138–140. ISBN 978-1-292-22304-9. OCLC 991765590.
منابع
- Acharya and Ray, Image Processing: Principles and Applications, Wiley-Interscience 2005 شابک ۰-۴۷۱-۷۱۹۹۸-۶
- Russ, The Image Processing Handbook: Fourth Edition, CRC 2002 شابک ۰-۸۴۹۳-۲۵۳۲-۳
- "Histogram Equalization" at Generation5 (archive)