Ppmhist User Manual(0) Ppmhist User Manual(0)

ppmhist - چاپ هیستوگرام (نمودار فراوانی) رنگ‌ها در یک تصویر PPM

?Bppmhist?P [?B-map?P | ?B-nomap?P] [?B-hexcolor?P | ?B-float?P | ?B-colorname?P] [?B-noheader?P] [?B-sort=?P{?Bfrequency?P,?Brgb?P}] [?B-forensic?P] [?Ippmfile?P]

این برنامه بخشی از Netpbm(1)است.

برنامه ?Bppmhist?P یک تصویر PPM را به عنوان ورودی خوانده و یک هیستوگرام (نمودار فراوانی) از رنگ‌های موجود در تصویر تولید می‌کند؛ یعنی فهرستی از تمام رنگ‌ها به همراه تعداد پیکسل‌های مربوط به هر رنگ در تصویر.

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

گزارش انسانی (Human Report)

این قالب را با تعیین گزینه ?B-nomap?P (یا قرار داشتن در حالت پیش‌فرض) دریافت می‌کنید.

قالب خروجی به این صورت است که برای هر رنگ در تصویر ورودی یک خط اختصاص می‌یابد.

به طور پیش‌فرض، دو خط سربرگ ستون‌ها و یک خلاصه آماری در بالا قرار دارد. برای جلوگیری از نمایش آن خطوط، از گزینه ?B-noheader?P استفاده کنید.

خلاصه آماری به شما نشان می‌دهد که آیا رنگ‌های سیاه یا سفید در تصویر حضور دارند یا خیر و چند سایه خاکستری و رنگی در آن وجود دارد. این خلاصه از نگارش 10.82 نرم‌افزار Netpbm (مارس ۲۰۱۸) اضافه شد.

در هر خط، ?Bppmhist?P رنگ را با مولفه‌های قرمز، سبز و آبی مشخص می‌کند. به طور پیش‌فرض، هر یک از این‌ها را در مبنای ده‌دهی (decimal) و با استفاده از همان مقادیر دقیق موجود در ورودی PPM فهرست می‌کند. بنابراین اگر تصویر دارای مقدار بیشینه (maxval) برابر ۲۵۵ باشد، اعداد فهرست در محدوده ۰ تا ۲۵۵ خواهند بود. با گزینه ?B-hexcolor?P می‌توانید این اعداد را به هگزادسیمال (شانزده‌شانزدهی) تغییر دهید. با گزینه ?B-float?P اعداد به صورت اعشاری و تنظیم‌شده با مقدار بیشینه ۱ نمایش داده می‌شوند.

هر خط میزان روشنایی (luminosity) رنگ را نیز فهرست می‌کند. این مقدار به صورت اعشاری و در همان مقیاس مقادیر rgb است (بالا را ببینید).

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

خروجی PPM (PPM Output)

این قالب را با گزینه ?B-map?P به دست می‌آورید.

پرونده خروجی یک تصویر PPM واقعی است، اما در قالب متنی PPM Plain بوده و حاوی کامنت‌هایی است تا تفاوت چندانی با گزارش انسانی شرح‌داده‌شده در بالا نداشته باشد.

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

کارکرد خروجی PPM اساساً مشابه خروجی ?Bpnmcolormap all?P است. برنامه ?Bppmhist?P بسیار قدیمی‌تر از ?Bpnmcolormap?P است.

علاوه بر گزینه‌های مشترک در تمام برنامه‌های مبتنی بر libnetpbm (به ویژه ?B-quiet?P، به گزینه‌های مشترک مراجعه کنید)، ?Bppmhist?P گزینه‌های خط فرمان زیر را می‌شناسد:

?B-sort=?P{?Bfrequency?P,?Brgb?P}
گزینه ?B-sort?P ترتیبی را که رنگ‌ها در خروجی فهرست می‌شوند تعیین می‌کند. مقدار ?Brgb?P به این معنی است که رنگ‌ها ابتدا بر اساس شدت مولفه قرمز، سپس سبز و سپس آبی مرتب شوند و کمترین شدت در ابتدا بیاید. مقدار ?Bfrequency?P به این معنی است که بر اساس تعداد پیکسل‌هایی از تصویر ورودی که دارای آن رنگ هستند مرتب شوند و رنگ‌هایی که بیشترین حضور را دارند در ابتدا قرار گیرند. در میان رنگ‌هایی با فراوانی یکسان، ترتیب همانند ?Brgb?P خواهد بود.

حالت پیش‌فرض ?Bfrequency?P است.

پیش از نگارش 10.88 در Netpbm (سپتامبر ۲۰۱۹)، با ?B-sort=frequency?P ترتیب رنگ‌هایی با فراوانی یکسان اختیاری بود.

?B-hexcolor?P
چاپ مولفه‌های رنگ در مبنای شانزده‌شانزدهی (هگزادسیمال). به قالب خروجی مراجعه کنید.

نمی‌توانید این گزینه را همراه با ?B-float?P یا ?B-map?P مشخص کنید.

?B-float?P
چاپ مولفه‌های رنگ و میزان روشنایی به صورت اعداد اعشاری ممیز شناور در بازه [0,1]. به قالب خروجی مراجعه کنید.

نمی‌توانید این گزینه را همراه با ?B-hexcolor?P یا ?B-map?P مشخص کنید.

این گزینه در Netpbm 10.19 (نوامبر ۲۰۰۳) اضافه شد.

?B-map?P
تولید یک پرونده PPM از جدول رنگ (نقشه رنگی) تصویر، همراه با هیستوگرام رنگ در قالب توضیحات (کامنت). به قالب خروجی مراجعه کنید.

نمی‌توانید این گزینه را همراه با ?B-float?P یا ?B-hexcolor?P مشخص کنید.

?B-nomap?P
تولید هیستوگرام به صورت خوانا برای انسان. این حالت پیش‌فرض است.
?B-colorname?P
افزودن نام رنگ به خروجی. این نام برگرفته از فرهنگ رنگ‌های سیستم است. اگر رنگ دقیق در فرهنگ رنگ موجود نباشد، یک ستاره به همراه نام نزدیک‌ترین رنگ موجود در فرهنگ چاپ می‌شود. اگر فرهنگ رنگ‌های سیستم را نداشته باشید، برنامه با شکست مواجه می‌شود.

این گزینه در Netpbm 10.10 (اکتبر ۲۰۰۲) اضافه شد.

?B-noheader?P
عدم چاپ سربرگ‌های ستون‌ها.
?B-forensic?P

با این گزینه، ?Bppmhist?P روی تصاویری که حاوی مقادیر نمونه (sample values) نامعتبر هستند نیز کار می‌کند. به طور معمول، مانند بیشتر برنامه‌های Netpbm، اگر ?Bppmhist?P با مقدار نمونه‌ای بزرگتر از maxval تعریف‌شده در تصویر روبرو شود، متوقف می‌گردد. وجود چنین مقداری به معنی نامعتبر بودن تصویر است و بنابراین پیکسل‌ها معنایی ندارند. اما با ?B-forensic?P، برنامه ?Bppmhist?P هیستوگرامی از مقادیر واقعی نمونه‌ها را بدون توجه به maxval تولید می‌کند. در صورت وجود، پیام‌هایی در خلاصه پیکسل‌های نامعتبر صادر می‌نماید.

یک کاربرد این گزینه، عیب‌یابی مشکلی است که باعث ایجاد تصویر نامعتبر Netpbm شده است.

یک استثنای کوچک در توانایی ?Bppmhist?P برای پردازش پیکسل‌های نامعتبر حتی با ?B-forensic?P وجود دارد: این برنامه هرگز نمی‌تواند مقادیر نمونه بزرگتر از ۶۵۵۳۵ را پردازش کند. توجه داشته باشید که در قالب به‌ندرت استفاده‌شده Plain PPM، ممکن است عددی بزرگتر از این مقدار در جایی که مقدار نمونه قرار می‌گیرد ظاهر شود.

این گزینه در Netpbm 10.66 (مارس ۲۰۱۴) جدید بود. اما نگارش‌های Netpbm قدیمی‌تر از 10.66 مقادیر نامعتبر نمونه را به درستی رد نمی‌کردند، بنابراین عملکرد آن‌ها بسیار شبیه به ?B-forensic?P بود.

ppm(1), pgmhist(1), pnmcolormap(1), pnmhistmap(1), ppmchange(1)

حق نشر © ۱۹۸۹ متعلق به جف پوزکانزر (Jef Poskanzer).

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

http://netpbm.sourceforge.net/doc/ppmhist.html
24 August 2019 netpbm documentation