Image Processing By Interp and Extrapolation(5) File Formats Manual Image Processing By Interp and Extrapolation(5)

تاریخ ایجاد: ۱۷ آوریل ۲۰۰۳

extendedopacity - نظریه درونیابی و برونیابی در netpbm

این صفحه رونوشتی از نشانی http://www.sgi.com/misc/grafica/interp در تاریخ ۱۷ آوریل ۲۰۰۳ با اندکی تغییرات در قالب‌بندی است که جهت راحتی در مستندات Netpbm گنجانده شده است. دست‌کم از تاریخ ۱۱ ژوئن ۲۰۰۵ به بعد، صفحه منبع در دسترس نبوده است.

Paul Haeberli and Douglas Voorhies

درونیابی و برونیابی میان دو تصویر، یک رویکرد کلی و یکپارچه‌ساز برای بسیاری از عملیات متداول نقطه‌ای و ناحیه‌ای در پردازش تصویر ارائه می‌دهد. روشنایی، کنتراست، اشباع رنگ، ته‌رنگ و وضوح (تیزی تصویر) همگی می‌توانند با یک فرمول واحد، به‌صورت جداگانه یا همزمان کنترل شوند. در چندین حالت، مزایای عملکردی و سرعتی نیز به همراه دارد.

درونیابی خطی اغلب برای آمیختن دو تصویر به کار می‌رود. کسر‌های آمیزش (alpha) و (1 - alpha) در یک میانگین وزن‌دار از هر مؤلفه هر پیکسل استفاده می‌شوند:

out = (1 - alpha)*in0 + alpha*in1

به‌طور معمول alpha عددی در بازه 0.0 تا 1.0 است. این حالت معمولاً برای درونیابی خطی میان دو تصویر استفاده می‌شود. چیزی که کمتر در نظر گرفته می‌شود این است که مقدار alpha می‌تواند فراتر از بازه 0.0 تا 1.0 نیز باشد. مقادیر بزرگتر از ۱ بخشی از in0 را کسر کرده و in1 را مقیاس‌بندی می‌کنند. مقادیر کمتر از 0.0 اثر معکوس دارند.

برونیابی به‌ویژه زمانی بسیار سودمند است که یک نسخه تباهیده (Degenerate) از تصویر به عنوان تصویری که باید از آن "دور شد" به کار رود. برونیابی در جهت دور شدن از یک تصویر سیاه‌وسفید، اشباع رنگ را افزایش می‌دهد. برونیابی در جهت دور شدن از یک تصویر مات و تار، وضوح و تیزی را افزایش می‌دهد. فرمول درونیابی/برونیابی امکان کنترل با یک پارامتر منفرد را فراهم می‌سازد که نمایش مجموعه‌ای از تصاویر را که هر یک در روشنایی، کنتراست، وضوح، رنگ یا اشباع متفاوت هستند، از نظر محاسباتی بسیار آسان کرده و شتاب‌دهی سخت‌افزاری را تسهیل می‌نماید.

در مثال‌های زیر، برای هر تصویر یک مقدار alpha منفرد استفاده شده است. با این حال، پردازش‌های دیگر نیز امکان‌پذیر هستند؛ برای نمونه در جایی که alpha تابعی از X و Y باشد، یا جایی که رد قلم‌مو مقدار alpha را در نزدیکی مکان‌نما کنترل کند.

برای کنترل روشنایی تصویر، از رنگ سیاه خالص به عنوان تصویر تباهیده (با alpha صفر) استفاده می‌کنیم. درونیابی تصویر را تاریک‌تر می‌کند و برونیابی آن را روشن‌تر می‌سازد. در هر دو حالت، پیکسل‌های روشن‌تر تأثیر بیشتری می‌پذیرند.

brightness

کنتراست را می‌توان با استفاده از یک تصویر خاکستری یکنواخت با روشنایی میانگین تصویر کنترل کرد. درونیابی کنتراست را کاهش می‌دهد و برونیابی آن را تقویت می‌کند. مقادیر منفی alpha تصاویری نگاتیو و وارونه با کنتراست‌های متغیر تولید می‌کنند. در تمامی حالت‌ها، روشنایی میانگین تصویر ثابت باقی می‌ماند.

contrast

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

برای تغییر اشباع رنگ، مؤلفه‌های پیکسل باید به سمت مقدار روشنایی (Luminance) همان پیکسل حرکت کنند یا از آن دور شوند. با استفاده از یک تصویر سیاه‌وسفید به عنوان نسخه تباهیده، اشباع رنگ می‌تواند با درونیابی کاهش یافته و با برونیابی افزایش یابد. این روش مانع از تبدیل‌های محاسباتی سنگین‌تر به فضای رنگی HSV و بازگشت از آن می‌شود. به‌روزرسانی‌های مکرر در یک برنامه تعاملی به‌ویژه سریع خواهند بود، زیرا نیازی به محاسبه مجدد روشنایی هر پیکسل نیست. مقادیر منفی alpha روشنایی را حفظ می‌کنند اما فام رنگی (Hue) تصویر ورودی را معکوس می‌سازند.

saturation

هرگونه کانولوشن، مانند شارپ کردن یا مات کردن، می‌تواند از طریق این رویکرد تنظیم شود. اگر از یک تصویر مات به عنوان تصویر تباهیده استفاده شود، درونیابی فرکانس‌های بالا را به درجات مختلف تضعیف می‌کند و برونیابی آنها را تقویت می‌نماید؛ در نتیجه تصویر از طریق ماسک‌گذاری نامشخص (Unsharp masking) شارپ و واضح می‌شود. تغییر مقدار alpha همانند فاکتور مقیاس کرنل عمل می‌کند، بنابراین مجموعه‌ای از کانولوشن‌ها که فقط در مقیاس تفاوت دارند، می‌توانند به سادگی و مستقل از اندازه کرنل انجام شوند. از آنجا که مات‌سازی برخلاف واضح‌سازی اغلب یک عملیات تفکیک‌پذیر (Separable) است، واضح‌سازی از طریق برونیابی می‌تواند برای کرنل‌های بزرگ بسیار کارآمدتر باشد.

sharpening

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

یک ویژگی کم‌نظیر این رویکرد درونیابی/برونیابی این است که تمام این پارامترهای تصویر می‌توانند به صورت همزمان تغییر کنند. در اینجا وضوح، ته‌رنگ و اشباع همگی همزمان دستکاری شده‌اند.

combined

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

از آنجا که محاسبه یک تصویر تباهیده گاهی آسان‌تر است، برونیابی ممکن است روش کارآمدتری برای دستیابی به جلوه‌هایی همچون واضح‌سازی یا اشباع رنگ ارائه دهد. آمیختن یک عملیات خطی است و بنابراین باید در فضای خطی، و نه فضای غیرخطی تصحیح گاما، انجام شود. همچنین دامنه مقادیر مؤلفه‌ها باید پایش شود، زیرا برش خوردن مقادیر، به ویژه در تصویر تباهیده، سبب بروز عدم دقت محاسباتی می‌شود.

این تکنیک‌های دستکاری تصویر می‌توانند در نرم‌افزارهای نقاشی و گرافیکی برای پیاده‌سازی آسان قلم‌موهایی به کار روند که اشباع می‌کنند، واضح می‌سازند، روشن یا تاریک می‌کنند، یا کنتراست و رنگ را تغییر می‌دهند. تنها تغییر عمده لازم این است که با مقادیر alpha فراتر از بازه 0.0 تا 1.0 کار شود.

شگفت‌آور و مایه تأسف است که چه شمار زیادی از بسته‌های نرم‌افزاری گرافیکی، مقادیر درونیابی را بیهوده به بازه 0.0 تا 1.0 محدود می‌کنند. توسعه‌دهندگان برنامه‌های کاربردی باید در صورت امکان به کاربران اجازه دهند که پارامترها را برونیابی نمایند.

برای نسخه کمی گسترش‌یافته‌تر این مقاله، ببینید: P. Haeberli and D. Voorhies. Image Processing by Linear Interpolation and Extrapolation. IRIS Universe Magazine No. 28, Silicon Graphics, Aug, 1994.

این صفحه راهنما توسط ابزار 'makeman' متعلق به Netpbm از روی منبع HTML تولید شده است. مستندات اصلی در نشانی زیر قرار دارد:

http://netpbm.sourceforge.net/doc/extendedopacity.html
netpbm documentation