| راهنمای کاربری pamrecolor(1) | General Commands Manual | راهنمای کاربری pamrecolor(1) |
نام (NAME)
pamrecolor - تغییر رنگ و نگاشت مجدد فضای رنگی تصویر Netpbm
خلاصه دستور (SYNOPSIS)
pamrecolor [--colorspace=نام] [--rmult=کسر] [--gmult=کسر] [--bmult=کسر] [--targetcolor=رنگ] [--colorfile=فایل] [-randomseed=عدد_صحیح]
[فایل_ورودی]
کوتاهترین مخفف یکتا برای هر گزینه قابل قبول است. میتوانید به جای یک خط تیره از دو خط تیره برای گزینهها استفاده کنید. همچنین میتوانید به جای علامت مساوی، از فاصله خالی برای جدا کردن نام گزینه از مقدار آن استفاده نمایید.
توضیحات (DESCRIPTION)
این برنامه بخشی از Netpbm(1)است.
دستور pamrecolor رنگهای یک تصویر را به نزدیکترین حالت ممکن به رنگهای هدف تغییر میدهد، با این شرط که درخشندگی (روشنایی) تصویر دستنخورده باقی بماند. به این معنی که اگر هر دو تصویر اصلی و هدف به مقیاس خاکستری تبدیل شوند (مثلاً با دستور ppmtopgm(1))، کاملاً یکسان به نظر خواهند رسید. میتوانید تعیین کنید که pamrecolor رنگهای هدف را بهصورت تصادفی انتخاب کند، یک فام رنگی واحد را برای کل تصویر اعمال کند یا رنگهای هدف را از یک تصویر دیگر دریافت نماید.
علاوه بر تصاویر استاندارد Netpbm، دستور pamrecolor روی تصاویر شبهNetpbm مبتنی بر فضاهای رنگی دلخواه نیز کار میکند. میتوانید فضای رنگی را بهصورت صریح تعریف کنید یا یکی از فضاهای رنگی شناختهشده برای برنامه را با نام انتخاب نمایید.
خروجی یک تصویر PAM در خروجی استاندارد است. گزینهها قالب دقیق PAM را کنترل میکنند. اگر تصویری از نوع PNM (شامل PBM، PGM یا PPM) میخواهید، دستور pamtopnm(1)را روی خروجی اجرا کنید. در صورتی که بخواهید از تصویر به عنوان ورودی برنامههای کنونی Netpbm استفاده کنید نیازی به تبدیل نیست، اما بسیاری از برنامههای متفرقه قالب PAM را نمیشناسند.
گزینهها (OPTIONS)
علاوه بر گزینههای عمومی مشترک در تمام برنامههای مبتنی بر libnetpbm (بهویژه گزینه -quiet، به مستندات گزینههای عمومی Netpbm مراجعه کنید)، دستور pamrecolor از گزینههای خط فرمان زیر پشتیبانی میکند:
- --colorspace=نام
- فضای رنگی
مورد
استفاده
برای تعیین
سهم هر یک
از
کانالهای
رنگی قرمز،
سبز و آبی
در
درخشندگی
(Luminance) را مشخص
میکند.
برای مثال،
در فضای
رنگی SMPTE-C یک
رنگ RGB با ضرب
کردن کانال
قرمز در 0.2124132،
کانال سبز
در 0.7010437 و
کانال آبی
در 0.0865432 و سپس
جمع کردن
این سه
حاصلضرب،
به مقیاس
خاکستری
تبدیل
میشود.
هنگام استفاده از این گزینه، تصاویر ورودی و خروجی تصاویر واقعی Netpbm نیستند، زیرا قالب تصویر Netpbm یک فضای رنگی خاص را تعریف میکند. در عوض، شما از گونهای از این قالب استفاده میکنید که در آن مقادیر نمونه در تصویر شطرنجی معنای متفاوتی دارند. بسیاری از برنامههایی که ظاهراً از تصاویر Netpbm استفاده میکنند، در عمل از گونهای با فضای رنگی متفاوت بهره میبرند. برای نمونه، GIMP بهطور داخلی از sRGB استفاده میکند و اگر با GIMP یک فایل تصویر Netpbm ایجاد کنید، در واقع گونهای از این قالب را با فضای رنگی sRGB تولید مینماید.
دستور pamrecolor فضاهای رنگی زیر (مقادیر نام) را میشناسد:
- adobe
- فضای رنگی Adobe RGB (1998) با نقطه سفید مرجع D65
- apple
- فضای رنگی Apple RGB با نقطه سفید مرجع D65
- cie
- فضای رنگی CIE با نقطه سفید مرجع Illuminant E
- ntsc
- فضای رنگی NTSC RGB با نقطه سفید مرجع Illuminant C
- pal
- فضای رنگی PAL/SECAM با نقطه سفید مرجع D65
- smpte-c
- فضای رنگی SMPTE-C با نقطه سفید مرجع D65
- srgb
- فضای رنگی sRGB با نقطه سفید مرجع D65
- wide
- فضای رنگی
Wide-gamut RGB با نقطه
سفید مرجع D50
مقدار پیشفرض "ntsc" است زیرا این فضای رنگی است که قالبهای Netpbm و بسیاری از ابزارهای گرافیکی استفاده میکنند. در مقابل، GIMP از sRGB به عنوان فضای رنگی بومی خود استفاده میکند.
مقادیر درخشندگی که pamrecolor برای هر یک از فضاهای رنگی بالا استفاده میکند، برگرفته از صفحه محاسبات ماتریسهای RGB-to-XYZ و XYZ-to-RGB بروس لیندبلوم (Bruce Lindbloom) است.
- --rmult=کسر
- --gmult=کسر
- --bmult=کسر
- به جای انتخاب یک فضای رنگی با نام، میتوانید سهم هر کانال رنگی را در درخشندگی کلی بهصورت صریح با ضرایب قرمز، سبز و آبی مشخص کنید. این سه گزینه باید همراه با هم استفاده شوند و مجموع این سه مقدار کسر باید برابر با 1.0 باشد. برای مثال، میتوانید فضای رنگی ProPhoto (ROMM) RGB را با "--rmult=0.2880402 --gmult=0.7118741 --bmult=0.0000857" مشخص نمایید.
- --targetcolor=رنگ
- مقدار رنگ
را به عنوان
رنگ هدف
برای تصویر
تعیین
میکند.
دستور pamrecolor
هر پیکسل را
تا حد ممکن
به رنگ هدف
نزدیک
میکند، با
این شرط که
درخشندگی
باید
دقیقاً
مانند
تصویر اصلی
حفظ شود.
مقدار رنگ
را همانند
آرگومانهای
تابع pnm_parsecolor() در
کتابخانه libnetpbm
(مانند "hotpink"
یا "#ff69b4") مشخص
کنید.
اگر هیچیک از گزینههای --targetcolor یا --colorfile را مشخص نکنید، pamrecolor بهصورت تصادفی یک رنگ هدف برای هر پیکسل از تصویر ورودی انتخاب میکند.
نمیتوانید هر دو گزینه -targetcolor و -colorfile را همزمان مشخص کنید.
- --colorfile=فایل
- رنگهای
هدف را
بهازای هر
پیکسل از
فایل Netpbm با
نام فایل
دریافت
میکند، به
جای اینکه
از یک رنگ
واحد برای
کل تصویر
استفاده
شود. فایل
باید یک
تصویر PPM یا
یک تصویر
رنگی PAM باشد.
اگر تصویر
داخل فایل
عریضتر یا
بلندتر از
تصویر
ورودی
باشد، pamrecolor
تنها از بخش
بالا و چپ
آن استفاده
میکند. اگر
تصویر
باریکتر
یا
کوتاهتر
باشد، pamrecolor
تصویر را
مانند
الگوهای
کاشیکاری
تکرار
مینماید.
اگر هیچیک از گزینههای --targetcolor یا --colorfile را مشخص نکنید، pamrecolor بهصورت تصادفی یک رنگ هدف برای هر پیکسل از تصویر ورودی انتخاب میکند.
نمیتوانید هر دو گزینه -targetcolor و -colorfile را همزمان مشخص کنید.
- -randomseed=عدد_صحیح
- این مقدار
بذر (Seed) برای
مولد اعداد
تصادفی است
که
پیکسلها
را تولید
میکند.
از این گزینه برای اطمینان از دریافت خروجی یکسان در اجراهای جداگانه استفاده نمایید.
بهطور پیشفرض، pamrecolor از بذری مشتقشده از زمان جاری سیستم و شناسه فرایند (PID) استفاده میکند که نتایجی نسبتاً نامرتبط در دفعات مختلف اجرا ارائه میدهد.
این گزینه در Netpbm 10.61 (دسامبر 2012) اضافه شده است.
مثالها (EXAMPLES)
این دستور به تصویر تهرنگ زرد میدهد:
pamrecolor --targetcolor=yellow colorpic.pam > yellowpic.pam
این دستور رنگها را از colorpicture.ppm گرفته و آنها را روی graypicture.pgm اعمال میکند:
pamrecolor --colorfile=colorpic.ppm graypic.pgm > colorizedpic.pam
نسخه مقیاس خاکستری فایل colorizedpic.pam دقیقاً شبیه graypic.pgm خواهد بود. توجه داشته باشید که اگر برای تبدیل به مقیاس خاکستری از ابزاری غیر از Netpbm استفاده میکنید، ممکن است لازم باشد مقدار مناسب --colorspace را برای ابزار تبدیل خود تعیین نمایید.
نکات (NOTES)
چند جلوه ویژه جالب که میتوانید با pamrecolor ایجاد کنید:
- یک فایل رنگی مشخص کنید که دقیقاً مانند تصویر ورودی باشد اما متنی بزرگ و رنگی به آن اضافه شده باشد. هنگام تبدیل تصویر به مقیاس خاکستری، این متن به شکلی جادویی ناپدید خواهد شد.
- یک تصویر خاکستری با کنتراست پایین (شاید پیامی محرمانه که با سایههای نزدیک به هم خاکستری نوشته شده) را به عنوان فایل ورودی و تصویری رنگارنگ اما کاملاً متفاوت را به عنوان فایل رنگی فراهم کنید. در صورت اجرای دقیق، تصویر خاکستری توسط تصویر رنگارنگ پنهان میشود و تنها افرادی که تصویر حاصل را به مقیاس خاکستری تبدیل کنند میتوانند تصویر خاکستری اولیه را بازیابی نمایند.
- استفاده از گزینه --targetcolor=tan برای قدیمی نشان دادن ظاهر تصویر (یا دقیقتر، عکسی با تون قهوهای مایل به زرد / سپیا شبیه به عکسهای اواخر قرن نوزدهم).
تاریخچه (HISTORY)
اسکات پاکین (Scott Pakin) دستور pamrecolor را در ژوئیه 2010 نوشت.
دستور pamrecolor در Netpbm 10.52 (سپتامبر 2010) معرفی شد.
نویسنده (AUTHOR)
حق نشر (C) 2010 اسکات پاکین (Scott Pakin)، scott+pbm@pakin.org
همچنین ببینید (SEE ALSO)
-
ppmtopgm(1)
-
ppmchange(1)
-
pnmremap(1)
منبع سند (DOCUMENT SOURCE)
این صفحه راهنما توسط ابزار 'makeman' از منابع HTML پروژه Netpbm تولید شده است. مستندات اصلی در نشانی زیر قرار دارد:
| 31 ژوئیه 2010 | مستندات netpbm |