تدرج رمادي محمول (.pgm)

معيار قياسي

تنسيق الصور الرمادية المحمولة (PGM) مواصفة الصور ذات التدرج الرمادي ضمن عائلة Netpbm، وتُستخدم على نطاق واسع في الرؤية الحاسوبية والروبوتات والفحص البصري وخوارزميات معالجة الصور الرقمية.

فحص البيانات الوصفية

تتعرف أنظمة التشغيل ومحللات الملفات على ملفات PGM من خلال فحص تسلسل البايت الثنائي البادئ:

اختر الملفات أو أسقطها هنا

خاص - لا تغادر الملفات جهازك أبدًا

أو الصق Ctrl+V
ضمان الخصوصية وعدم الإرسال عبر الشبكة: صفر بايت يتم رفعه إلى خوادم خارجية. تمت كل عمليات المعالجة محلياً في صندوق الحماية (Sandbox) الخاص بمتصفحك.

توقيع رأس الملف على مستوى البايت (Magic Bytes)

تتعرف أنظمة التشغيل ومحللات الملفات على ملفات PGM من خلال فحص تسلسل البايت الثنائي البادئ:

التوقيع الست عشري (الإزاحة 0):

50 32 / 50 35

تمثيل ASCII: P2 / P5

التوحيد القياسي: معيار مكتبة Netpbm

المواصفات الفنية

هيكلية الحاويةتنسيق Netpbm نصي (P2) أو ثنائي (P5)، يحدد العرض والارتفاع والقيمة القصوى للرمادي وتدفق البكسلات
الضغطبايتات ثنائية خام غير مضغوطة أو أرقام ASCII مقروءة للبشر
ترتيب البايتات (Endianness)ترتيب البايتات الكبير للعينات الثنائية بعمق 16 بت في وضع P5
مساحات الألوانتدرج رمادي خطي أو sRGB
القنوات والبنيةقناة واحدة بتدرج رمادي ودقة 8 أو 16 بت
الحد الأقصى للأبعادغير محدود عملياً (يدعم إحداثيات بأي طول)
الشفافيةلا يوجد
البث والتحميل التدرجييدعم القراءة المتتابعة وعرض الصورة صفاً بعد صف

مصفوفة المقارنة التقنية: PGM مقابل المنافسين

السمة التقنيةPGM (الحالي)PBMPPMPNG
وضع الألوانتدرج رمادي (8 بت / 16 بت)أحادية اللون 1 بتألوان حقيقية RGB (24 بت / 48 بت)تدرج رمادي، RGB، RGBA
شقيق NetpbmPGM (صورة رمادية محمولة)PBM (صورة نقطية محمولة)PPM (صورة بكسل محمولة)معيار W3C من غير Netpbm
بايتات التعرّفP2 (نصي) / P5 (ثنائي)P1 (نصي) / P4 (ثنائي)P3 (نصي) / P6 (ثنائي)‰PNG....
الضغطغير مضغوطغير مضغوطغير مضغوطضغط Deflate بدون فقدان

أنماط التلف الشائعة ودليل الاسترداد بالنظام الست عشري

تظهر الصورة مقلوبة أو بيضاء بالكامل.

السبب الجذري: معامل 'maxval' غير متطابق في الترويسة (مثل الإعلان عن maxval كـ 1 بدلاً من 255).

الاسترداد: صحّح سطر maxval في الترويسة أو حوّل الملف باستخدام محول Netpbm في File2File.app.

تحليل الأمان ومتجهات الهجوم على المحلّل

ينبغي لمفككات PGM التحقق من تطابق عدد البكسلات المقروء مع الأبعاد المعلنة لتجنب تجاوز المخزن المؤقت.

ناقلات الهجوم المعروفة

  • تجاوز للأعداد الصحيحة أثناء تخصيص مخزن مؤقت بحجم العرض × الارتفاع × (2 إذا تجاوز maxval القيمة 255، وإلا 1).
  • قراءة تتجاوز حدود المخزن المؤقت عند تحليل رموز أرقام ASCII المشوهة.
  • حجب الخدمة بسبب تخصيص مساحة ذاكرة هائلة نتيجة أبعاد مصطنعة في الترويسة.

أفضل الممارسات الدفاعية: حدّد أقصى الأبعاد المسموح بها وقيود تخصيص الذاكرة قبل قراءة تدفقات البكسلات.

الأصول التاريخية والمحطات الرئيسية

2000وُحّد العمق البالغ 16 بتاً (مع قيمة maxval تصل إلى 65535) في الوضع الثنائي P5 للتصوير العلمي.
1993أُدرج التنسيق في حزمة أدوات Netpbm ليكون صيغة وسيطة قياسية للتدرج الرمادي.
1989ابتكر Jef Poskanzer صيغة PGM لتوسيع PBM ودعم 256 درجة من الرمادي.

المزايا الرئيسية والإيجابيات

  • قد تجعل بنية PGM المدمجة تنفيذ برامج قراءة أساسية أمرًا مباشرًا، لكن التعامل مع أعماق العينات والترويسات والمدخلات المشوهة يتطلب عناية.
  • يدعم أصلياً التدرج الرمادي بعمق 16 بت، ما يجعله مناسباً لخرائط الارتفاع والعمق والتصوير الحراري.
  • يتيح وضع ASCII (P2) فحص قيم البكسلات الخام وتعديلها مباشرةً في محررات النصوص العادية.

القيود الفنية والسلبيات

  • لا يستخدم الضغط، لذا تكون ملفاته كبيرة مقارنةً بتنسيقات مضغوطة مثل PNG.
  • لا يتضمن بيانات وصفية عن الأبعاد الفيزيائية أو فضاءات الألوان أو الموقع الجغرافي.
  • يقتصر على قناة واحدة، ولا يمكنه تخزين بيانات الألوان أو شفافية ألفا.

معلومات تقنية طريفة

  • تستخدم OpenCV وROS (نظام تشغيل الروبوتات) وأنظمة الرؤية الآلية ملفات PGM كثيراً لخرائط الملاحة في SLAM.
  • يستخدم مطورو الألعاب ملفات PGM ذات عمق 16 بت لخرائط ارتفاع التضاريس، لأن بيانات الارتفاع الخام غير مضغوطة وسهلة التحميل.
  • تحدد قيمة maxval في الترويسة أقصى درجة سطوع (عادةً 255 لعمق 8 بت أو 65535 لعمق 16 بت).

الأسئلة التقنية المتكررة

فيمَ تُستخدم صيغة PGM؟

تُستخدم صيغة PGM بشكل أساسي في الرؤية الحاسوبية (OpenCV)، والروبوتات (ملفات خريطة ROS)، والتصوير العلمي، وإنشاء خرائط ارتفاع التضاريس ثلاثية الأبعاد.

ما الفرق بين ملفات P2 و P5 PGM؟

تنسيق P2 عبارة عن نص ASCII عادي حيث يتم كتابة كل بكسل كرقم، بينما يخزن التنسيق P5 البكسلات كبايتات ثنائية مضغوطة.

كيف يمكنني تحويل PGM إلى JPG أو PNG؟

قم برفع ملف PGM الخاص بك إلى File2File.app لتحويله إلى PNG أو JPG مباشرة في متصفحك مع الحفاظ على الخصوصية الكاملة.