Pgmkernel User Manual(0) Pgmkernel User Manual(0)

pgmkernel - تولید یک کرنل کانولوشن

pgmkernel [-weight=number] [-maxval=] {size | width height}

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

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

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

در صورت مشخص کردن یک آرگومان، pgmkernel یک تصویر PGM با عرض و ارتفاع size تولید می‌کند، و در صورت تعیین دو آرگومان، تصویری با عرض width و ارتفاع height ایجاد می‌نماید.

دستور pgmkernel تابع کانولوشن K را به صورت زیر محاسبه می‌کند:

K(i,j) = 1 / ( 1 + w * sqrt(i^2 + j^2))

که در آن w ضریبی است که از طریق گزینه -weight تعیین می‌شود. مقادیر i و j بر حسب پیکسل سنجیده می‌شوند. مقدار K در همه‌جای فراتر از عرض و ارتفاع تعیین‌شده برای کرنل، صفر است.

مقادیر نمونه در خروجی PGM با استفاده از شیوه‌نامه‌ای که pnmconvol برای نمایش اعداد حقیقی K در قالب PGM مشخص می‌کند، مقیاس‌بندی شده و انحراف (بایاس) می‌یابند.

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

فاصله از مرکز با این مقدار وزن‌دهی می‌شود؛ یک عدد بزرگ‌تر به این معنی است که با دور شدن از مرکز، مقادیر با سرعت بیشتری افت می‌کنند.

این مقدار باید یک عدد حقیقی مثبت باشد.

مقدار پیش‌فرض 6.0 است.

بیشینه مقدار (maxval) برای کرنل PGM.

پیش‌فرض 255 است.

این گزینه در Netpbm 10.65 (دسامبر ۲۰۱۳) اضافه شد. پیش از آن، مقدار maxval همواره ۲۵۵ بود.

زمان محاسبات متناسب با width*height است. این زمان با افزایش اندازه کرنل به‌سرعت بالا می‌رود. در چنین مواردی، استفاده از FFT (تبدیل فوریه سریع) می‌تواند رویکرد بهتری باشد.

پیش از Netpbm 10.65 (دسامبر ۲۰۱۳)، خروجی همواره در قالب متنی PGM (یا Plain) بود. (اکنون، همانند برنامه‌های استاندارد Netpbm، حالت پیش‌فرض PGM خام یا raw است و می‌توانید با گزینه -plain به قالب متنی دست یابید).

پیش از Netpbm 10.65 (دسامبر ۲۰۱۳)، در این راهنما ذکر شده بود که مقادیر منفی برای -weight مجاز هستند (تا زمانی که بزرگ‌تر از -1.0 باشند). اما این برنامه هرگز با اعداد منفی کار نمی‌کرد و مشخص نیست که خروجی آن مفید باشد؛ بنابراین اکنون الزامی است که مقدار -weight غیرمنفی باشد و در صورت تعیین مقدار منفی، برنامه به‌درستی با خطا متوقف می‌شود.

pnmconvol(1), pnmsmooth(1) pamgauss(1) pgm(1)

Alberto Accomazzi (alberto@cfa.harvard.edu).

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

http://netpbm.sourceforge.net/doc/pgmkernel.html
19 December 2013 netpbm documentation