بیتمپ قابل حمل (.pbm)
Netpbm استانداردفرمت بیتمپ قابل حمل (PBM) فرمت گرافیکی سیاه و سفید بنیادی ۱ بیتی از مجموعه Netpbm است که برای حداکثر سادگی، خوانایی توسط انسان و تولید برنامهنویسی طراحی شده است.
بررسی و فراداده
سیستمعاملها و تحلیلگرهای فایل، فایلهای PBM را با بررسی توالی بایتهای دودویی ابتدایی شناسایی میکنند:
امضای هدر در سطح بایت (Magic Bytes)
سیستمعاملها و تحلیلگرهای فایل، فایلهای PBM را با بررسی توالی بایتهای دودویی ابتدایی شناسایی میکنند:
امضای HEX (آفست 0):
50 31 / 50 34نمایش ASCII: P1 / P4
استانداردسازی: Netpbm Library Standard
مشخصات فنی
| معماری کانتینر | ASCII (P1) or binary (P4) Netpbm format specifying width, height, and 1-bit pixel array |
| فشردهسازی | Uncompressed raw binary or ASCII character representation |
| ترتیب بایتها (Endianness) | Big-Endian bit-packing (in P4 binary mode) |
| فضاهای رنگی | Monochrome (1-bit black and white) |
| کانالها و ساختار | 1 channel 1-bit monochrome (0 = White, 1 = Black) |
| حداکثر ابعاد | Practically unlimited (ASCII numeric dimension string) |
| شفافیت مشخصات | None |
| استریمینگ و پیشرونده | Sequential row-by-row streaming playback |
ماتریس مقایسه فنی: PBM در برابر رقبا
| ویژگی فنی | PBM (فعلی) | PGM | PPM | BMP |
|---|---|---|---|---|
| عمق رنگ | تکرنگ ۱ بیتی (فقط سیاه و سفید) | خاکستری ۸ بیتی تا ۱۶ بیتی | رنگی RGB ۲۴ بیتی تا ۴۸ بیتی | RGBA از ۱ بیتی تا ۳۲ بیتی |
| فرمت همخانواده Netpbm | PBM (بیتمپ قابل حمل) | PGM (گریمپ قابل حمل) | PPM (پیکسمپ قابل حمل) | فرمت غیر Netpbm |
| بایتهای جادویی | P1 (متنی) / P4 (باینری) | P2 (متنی) / P5 (باینری) | P3 (متنی) / P6 (باینری) | BM (0x42 0x4D) |
| کاربرد اصلی | پردازش سند OCR و فکس | تصویربرداری پزشکی و مقیاس خاکستری | آموزش گرافیک کامپیوتری | گرافیک دسکتاپ ویندوز |
حالتهای رایج خرابی و راهنمای بازیابی هگز
تصویر با سطرهای افقی کج یا پیکسلهای گمشده رندر میشود.
علت ریشهای: نظرات فرار نکرده ('#') یا جداکنندههای فضای خالی مفقود در هدر ASCII.
بازیابی: فرمت هدر و شکست خطوط را با استفاده از مبدل Netpbm در File2File اعتبارسنجی کنید.
تحلیل امنیتی و بردارهای حمله تجزیهکننده (Parser)
تجزیهکنندگان PBM که رشتههای ابعاد ASCII را میخوانند، در صورت تجاوز ابعاد از محدودیتهای پلتفرم، مستعد سرریز اعداد صحیح هستند.
بردارهای حمله شناختهشده
- سرریز عدد صحیح در هنگام تخصیص بافر بیت عرض * ارتفاع.
- خواندن بیش از حد بافر هنگام خواندن جریانهای فضای خالی ASCII بدفرمت.
- حمله محرومیت از سرویس (DoS) از طریق اعلامیههای ابعاد بیش از حد بزرگ در فایلهای کوچک.
بهترین روشهای پدافندی:
تاریخچه و نقاط عطف
مزایا و نقاط قوت کلیدی
- سادگی الگوریتمی نهایی: تنها در ۱۰ خط کد در هر زبان برنامهنویسی قابل خواندن یا نوشتن است.
- حالت ASCII (P1) صددرصد توسط انسان قابل خواندن است و میتوان آن را در ویرایشگرهای متن استاندارد مانند Notepad ایجاد یا ویرایش کرد.
- معیار تبادل جهانی در بینایی ماشین آکادمیک و خطوط لوله OCR اسناد.
محدودیتها و معایب فنی
- به شدت محدود به تکرنگ ۱ بیتی (بدون سایههای خاکستری یا رنگ).
- حالت ASCII بسیار ناکارآمد است و به ازای هر تکبایت داده تصویر، از یک بایت متن ASCII ('0' یا '1') استفاده میکند.
- فاقد متادیتا، پروفایلهای رنگی یا پشتیبانی از لایه است.
نکات فنی جالب
- در ASCII PBM ('P1')، یک پیکسل سفید با '0' و یک پیکسل سیاه با '1' نشان داده میشود (که برخلاف قراردادهای مدرن RGB است).
- شما به معنای واقعی کلمه میتوانید با تایپ کردن 'P1 2 2 1 0 0 1' در یک فایل متنی و ذخیره آن، یک تصویر معتبر PBM ایجاد کنید.
- این فرمت اختراع شد تا دانشمندان کامپیوتر بتوانند اسناد اسکنشده را از طریق گروههای خبری Usenet به اشتراک بگذارند.
سوالات فنی متداول
تفاوت بین PBM، PGM و PPM چیست؟
فرمت PBM تکرنگی ۱ بیتی (فقط سیاه و سفید)، PGM مقیاس خاکستری (طیفهای خاکستری) و PPM رنگی کامل ۲۴ بیتی RGB است.
P1 و P4 در فایلهای Pbm چه معنایی دارند؟
«P1» نشان میدهد که تصویر در قالب متن ساده ASCII ذخیره شده است، در حالی که «P4» نشان میدهد که تصویر به صورت بایتهای باینری فشرده ذخیره شده است.
چگونه میتوانم یک فایل PBM را به PNG تبدیل کنم؟
شما میتوانید با استفاده از File2File.app و بدون آپلود دادهها به هیچ سروری، فایلهای PBM را مستقیماً در مرورگر خود به تصاویر مدرن PNG یا JPG تبدیل کنید.