متعادل‌سازی هیستوگرام

از testwiki
نسخهٔ تاریخ ۲۳ اوت ۲۰۲۴، ساعت ۰۰:۱۳ توسط imported>InternetArchiveBot (نجات ۰ منبع و علامت‌زدن ۱ به‌عنوان مرده.) #IABot (v2.0.9.5)
(تفاوت) → نسخهٔ قدیمی‌تر | نمایش نسخهٔ فعلی (تفاوت) | نسخهٔ جدیدتر ← (تفاوت)
پرش به ناوبری پرش به جستجو

متعادل‌سازی هیستوگرام الگو:به انگلیسی یا یکسان‌سازی هیستوگرام یا یکسان‌سازی بافت‌نگاشت روشی در پردازش تصویرِ تنظیم کنتراست با استفاده از بافت‌نگاشت تصویر است.

A histogram which is zero apart from a central area containing strong peaks is transformed by stretching the peaked area to fill the entire x-axis.
هیستوگرام یک تصویر قبل و بعد از متعادل‌سازی.

نمای‌کلی

این روش معمولاً کنتراست کلی بسیاری از تصاویر را افزایش می‌دهد، به خصوص زمانی که تصویر با محدوده باریکی از مقادیر شدت نمایش داده می‌شود. از طریق این تنظیم، شدت‌ها را می‌توان بهتر در بافت‌نگاشت با بکارگیری از طیف کامل شدت‌ها به‌طوریکنواخت توزیع کرد. این اجازه می‌دهد تا ناحیه‌هایی با کنتراست محلی کمتر کنتراست بالاتری به‌دست آورند. یکسان‌سازی بافت‌نگاشت با پخش مؤثر مقادیر شدت بسیار پرجمعیت که برای کاهش کنتراست تصویر استفاده می‌شود، این کار را انجام می‌دهد.

اصلاحات این روش از بافت‌نگاشت‌های متعدد، به نام زیربافت‌نگاشت، برای تأکید الگو:به انگلیسی بر کنتراست محلی، به جای کنتراست کلی سراسری استفاده می‌کند. نمونه‌هایی از این روش‌ها عبارتند از : یکسان‌سازی بافت‌نگاشت تطبیقی، یکسان‌سازی بافت‌نگاشت تطبیقی محدودسازی کنتراست یا CLAHE، یکسان‌سازی بافت‌نگاشت چندقله‌ای (MPHE) و یکسان‌سازی دوبافت‌نگاشت بهینهٔ بتای چندمنظوره (MBOBHE). هدف این روش‌ها، به ویژه MBOBHE، بهبود کنتراست بدون ایجاد تغییرات میانگین روشنایی و کاهش جزئیات با اصلاح الگوریتم HE است.[۱]

به نظر می‌رسد یک تبدیل سیگنال هم‌ارز یکسان‌سازی بافت‌نگاشت نیز در شبکه‌های عصبی بیولوژیکی اتفاق می‌افتد تا نرخ آتش الگو:به انگلیسی خروجیِ نورون را به عنوان تابعی از آمار ورودی به حداکثر برساند. این به ویژه در شبکیه مگس ثابت شده‌است.[۲]

پس افکنش

پس افکنش الگو:به انگلیسی (یا "افکنش") یک تصویر هیستوگرام شده، اعمال مجدد هیستوگرام اصلاح شده به تصویر اصلی است که به عنوان یک جدول جستجو الگو:به انگلیسی برای مقادیر روشنایی پیکسل عمل می‌کند.

برای هر گروه از پیکسل‌ها که از یک موقعیت از همه تصاویر تک کانال ورودی گرفته می‌شود، تابع مقدار خانک الگو:به انگلیسی هیستوگرام را به تصویر مقصد می‌گذارد، جایی که مختصات خانک با مقادیر پیکسل‌های این گروه ورودی تعیین می‌شود. از نظر آماری، مقدار هر پیکسل تصویر خروجی، احتمال تعلق گروه پیکسل ورودی مربوطه به شیئی را که هیستوگرام آن استفاده شده‌است، مشخص می‌کند.[۳]

پیاده‌سازی

یک تصویر گسسته در مقیاس خاکستری {x} را در نظر بگیرید و اجازه دهید ni تعداد رخدادهای سطح خاکستری i باشد. احتمال وقوع یک پیکسل از سطح i در تصویر، است

 px(i)=p(x=i)=nin,0i<L

 L تعداد کل سطوح خاکستری در تصویر (معمولاً ۲۵۶)، n تعداد کل پیکسل‌های تصویر، و px(i) در واقع هیستوگرام تصویر برای مقدار پیکسل i است که به [۰٬۱] بهنجارشده الگو:به انگلیسی است.

اجازه دهید تابع توزیع تجمعی مربوط به i را نیز تعریف کنیم

cdfx(i)=j=0ipx(x=j)

که همچنین هیستوگرام بهنجارشده تجمعی تصویر است.

ما می‌خواهیم یک تبدیل  y=T(x) برای تولید یک تصویر جدید {y}، با هیستوگرام مسطح ایجادکنیم. چنین تصویری یک تابع توزیع تجمعی خطی‌سازی‌شده (CDF) در سراسر محدوده مقدار خواهد داشت، به عنوان مثال

cdfy(i)=(i+1)K برای 0i<L

برای مقداری ثابت  K. ویژگی‌های CDF به ما امکان می‌دهد چنین تبدیلی را انجام دهیم (به تابع توزیع وارون مراجعه کنید). به این صورت تعریف شده‌است

 y=T(k)=cdfx(k)

در اینجا  k در محدوده [0,L1]) است. توجه کنید که  T از آنجایی که از هیستوگرام بهنجارشده {x} استفاده کردیم، سطوح را در محدوده [۰٬۱] نگاشت می‌کند. برای نگاشت الگو:به انگلیسی مقادیر به محدوده اصلی خود، تبدیل ساده زیر باید روی نتیجه اعمال شود:

 y=y(max{x}min{x})+min{x}=y(L1) .

مشتق دقیق تر در اینجا ارائه شده است.

 y یک مقدار حقیقی است در حالی که y باید یک عدد صحیح باشد یک روش بصری و محبوب[۴] استفاده از عمل گردکردن است:

 y=round(y(L1)) .

با این حال، تجزیه و تحلیل دقیق به فرمول اندکی متفاوت منجر می‌شود. مقدار نگاشت شده  y باید برای محدوده 0<y1/L، ۰ باشد. و  y=1 برای 1/L<y2/L ،  y=2 برای 2/L<y3/L ، .... ، و درنهایت  y=L1 برای (L1)/L<y1 . سپس فرمول کمّی‌سازی از  y به  y باید باشد

y=ceil(Ly)1 .

(توجه داشته باشید: y=1 زمانی که  y=0 ، با این حال، این اتفاق نمی‌افتد فقط به این دلیل  y=0 به این معنی است که هیچ پیکسلی مطابق با آن مقدار وجود ندارد)

مثال‌ها

برای سازگاری با استفاده آماری، «سی‌دی‌اف» (یعنی تابع توزیع تجمعی) باید با «هیستوگرام تجمعی» جایگزین شود، به خصوص که مقاله به تابع توزیع تجمعی پیوند می‌خورد که از تقسیم مقادیر در هیستوگرام تجمعی بر مقدار کلی پیکسل‌ها به دست می‌آید. سی‌دی‌اف متعادل‌شده برحسب رتبه تعریف می‌شود.

تصویر کوچک

زیرتصویر ۸×۸ در مقیاس خاکستری ۸ بیتی نشان داده شده‌است

تصویر ۸ بیتی در مقیاس خاکستری نشان داده شده دارای مقادیر زیر است:

۵۲ ۵۵ ۶۱ ۵۹ ۷۹ ۶۱ ۷۶ ۶۱
۶۲ ۵۹ ۵۵ ۱۰۴ ۹۴ ۸۵ ۵۹ ۷۱
۶۳ ۶۵ ۶۶ ۱۱۳ ۱۴۴ ۱۰۴ ۶۳ ۷۲
۶۴ ۷۰ ۷۰ ۱۲۶ ۱۵۴ ۱۰۹ ۷۱ ۶۹
۶۷ ۷۳ ۶۸ ۱۰۶ ۱۲۲ ۸۸ ۶۸ ۶۸
۶۸ ۷۹ ۶۰ ۷۰ ۷۷ ۶۶ ۵۸ ۷۵
۶۹ ۸۵ ۶۴ ۵۸ ۵۵ ۶۱ ۶۵ ۸۳
۷۰ ۸۷ ۶۹ ۶۸ ۶۵ ۷۳ ۷۸ ۹۰

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

مقدار تعداد مقدار تعداد مقدار تعداد مقدار تعداد مقدار تعداد
۵۲ ۱ ۶۴ ۲ ۷۲ ۱ ۸۵ ۲ ۱۱۳ ۱
۵۵ ۳ ۶۵ ۳ ۷۳ ۲ ۸۷ ۱ ۱۲۲ ۱
۵۸ ۲ ۶۶ ۲ ۷۵ ۱ ۸۸ ۱ ۱۲۶ ۱
۵۹ ۳ ۶۷ ۱ ۷۶ ۱ ۹۰ ۱ ۱۴۴ ۱
۶۰ ۱ ۶۸ ۵ ۷۷ ۱ ۹۴ ۱ ۱۵۴ ۱
۶۱ ۴ ۶۹ ۳ ۷۸ ۱ ۱۰۴ ۲
۶۲ ۱ ۷۰ ۴ ۷۹ ۲ ۱۰۶ ۱
۶۳ ۲ ۷۱ ۲ ۸۳ ۱ ۱۰۹ ۱

تابع توزیع تجمعی در زیر نشان داده شده‌است. مجدداً، مقادیر پیکسلی که به افزایش سی‌دی‌اف کمک نمی‌کنند برای اختصار مستثنی هستند.

v, شدت پیکسل سی‌دی‌اف(v) h(v), متعادل‌سازی شده v
۵۲ ۱ ۰
۵۵ ۴ ۱۲
۵۸ ۶ ۲۰
۵۹ ۹ ۳۲
۶۰ ۱۰ ۳۶
۶۱ ۱۴ ۵۳
۶۲ ۱۵ ۵۷
۶۳ ۱۷ ۶۵
۶۴ ۱۹ ۷۳
۶۵ ۲۲ ۸۵
۶۶ ۲۴ ۹۳
۶۷ ۲۵ ۹۷
۶۸ ۳۰ ۱۱۷
۶۹ ۳۳ ۱۳۰
۷۰ ۳۷ ۱۴۶
۷۱ ۳۹ ۱۵۴
۷۲ ۴۰ ۱۵۸
۷۳ ۴۲ ۱۶۶
۷۵ ۴۳ ۱۷۰
۷۶ ۴۴ ۱۷۴
۷۷ ۴۵ ۱۷۸
۷۸ ۴۶ ۱۸۲
۷۹ ۴۸ ۱۹۰
۸۳ ۴۹ ۱۹۴
۸۵ ۵۱ ۲۰۲
۸۷ ۵۲ ۲۰۶
۸۸ ۵۳ ۲۱۰
۹۰ ۵۴ ۲۱۵
۹۴ ۵۵ ۲۱۹
۱۰۴ ۵۷ ۲۲۷
۱۰۶ ۵۸ ۲۳۱
۱۰۹ ۵۹ ۲۳۵
۱۱۳ ۶۰ ۲۳۹
۱۲۲ ۶۱ ۲۴۳
۱۲۶ ۶۲ ۲۴۷
۱۴۴ ۶۳ ۲۵۱
۱۵۴ ۶۴ ۲۵۵

(لطفا توجه داشته باشید که صورت h(v)=ceil(cdf(v))1 هنوز نمایش داده نشده‌است)

این سی‌دی‌اف نشان می‌دهد که حداقل مقدار در این زیرتصویر، ۵۲ است و حداکثر مقدار، ۱۵۴ است. سی‌دی‌اف ۶۴ برای مقدار ۱۵۴ با این تعداد پیکسل‌های تصویر منطبق است. سی‌دی‌اف باید به [0,255] بهنجار شود. فرمول یکسان‌سازی هیستوگرام کلی به صورت زیر است:

h(v)=round(cdf(v)cdfmin(M×N)cdfmin×(L1))

در اینجا cdfmin حداقل مقدار غیر صفر تابع توزیع تجمعی است (در این مورد ۱ است)، M × N تعداد پیکسل‌های تصویر را نشان می‌دهد (برای مثال بالای ۶۴، جایی که M عرض و N ارتفاع است) و L تعداد سطوح خاکستری استفاده شده (در بیشتر موارد، مانند این، ۲۵۶) است.

{{سخ}}توجه داشته باشید که برای مقیاس‌بندی مقادیر در داده‌های اصلی که بالاتر از ۰ هستند تامحدوده ۱ تا L-1 شامل، معادله بالا در عوض به صورت زیر خواهد بود:

h(v)=round(cdf(v)cdfmin(M×N)cdfmin×(L2))+1

در اینجا cdf(v) > 0. مقیاس‌بندی از ۱ تا ۲۵۵، غیرصفر بودن مقدار حداقل را حفظ می‌کند.

{{سخ}}فرمول یکسان‌سازی برای مثال مقیاس داده‌ها از ۰ تا ۲۵۵، شامل:

h(v)=round(cdf(v)163×255)

مثلاً سی‌دی‌اف ۷۸، ۴۶ است. (مقدار ۷۸ در ردیف پایین ستون ۷ استفاده می‌شود) مقدار بهنجارشده تبدیل می‌شود

h(78)=round(46163×255)=round(0.714286×255)=182

هنگامی که این کار انجام شد، مقادیر تصویر متعادل‌سازی‌شده مستقیماً از سی‌دی‌اف بهنجارشده گرفته می‌شود تا مقادیر برابر شده را به دست آورند:

۰ ۱۲ ۵۳ ۳۲ ۱۹۰ ۵۳ ۱۷۴ ۵۳
۵۷ ۳۲ ۱۲ ۲۲۷ ۲۱۹ ۲۰۲ ۳۲ ۱۵۴
۶۵ ۸۵ ۹۳ ۲۳۹ ۲۵۱ ۲۲۷ ۶۵ ۱۵۸
۷۳ ۱۴۶ ۱۴۶ ۲۴۷ ۲۵۵ ۲۳۵ ۱۵۴ ۱۳۰
۹۷ ۱۶۶ ۱۱۷ ۲۳۱ ۲۴۳ ۲۱۰ ۱۱۷ ۱۱۷
۱۱۷ ۱۹۰ ۳۶ ۱۴۶ ۱۷۸ ۹۳ ۲۰ ۱۷۰
۱۳۰ ۲۰۲ ۷۳ ۲۰ ۱۲ ۵۳ ۸۵ ۱۹۴
۱۴۶ ۲۰۶ ۱۳۰ ۱۱۷ ۸۵ ۱۶۶ ۱۸۲ ۲۱۵

توجه داشته باشید که حداقل مقدار (۵۲) اکنون ۰ و حداکثر مقدار (۱۵۴) اکنون ۲۵۵ است.

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

تصویر در اندازه کامل

قبل از یکسان‌سازی بافت‌نگاشت
هیستوگرام مربوطه (قرمز) و هیستوگرام تجمعی (سیاه)
پس از یکسان‌سازی بافت‌نگاشت
هیستوگرام مربوطه (قرمز) و هیستوگرام تجمعی (سیاه)

جستارهای وابسته

یادداشت

الگو:چپ‌چین

الگو:پایان چپ‌چین

منابع

الگو:چپ‌چین

الگو:پایان چپ‌چین