পোর্টেবল গ্রেম্যাপ (.pgm)

Netpbm স্ট্যান্ডার্ড

পোর্টেবল গ্রে-ম্যাপ ফরম্যাট (PGM) হল Netpbm পরিবারের গ্রেস্কেল ইমেজ স্পেসিফিকেশন, যা কম্পিউটার ভিশন, রোবোটিক্স, অপটিক্যাল পরিদর্শন এবং ডিজিটাল ইমেজ প্রসেসিং অ্যালগরিদমে ব্যাপকভাবে ব্যবহৃত হয়।

ইনস্পেক্ট ও মেটাডেটা

অপারেটিং সিস্টেম এবং ফাইল অ্যানালাইজারগুলো শুরুর বাইনারি বাইট সিকোয়েন্স পরীক্ষা করে PGM ফাইল শনাক্ত করে:

এখানে ফাইল নির্বাচন করুন বা ড্রপ করুন

ব্যক্তিগত - ফাইল কখনোই আপনার ডিভাইস ছেড়ে যায় না

অথবা পেস্ট করুন Ctrl+V
নেটওয়ার্কে কোনো ডেটা পাঠানো হয় না - গোপনীয়তার নিশ্চয়তা: বাহ্যিক সার্ভারে ০ বাইট আপলোড করা হয়েছে। সমস্ত প্রক্রিয়াকরণ আপনার ব্রাউজার স্যান্ডবক্সে স্থানীয়ভাবে ঘটেছে।

বাইট-লেভেল হেডার সিগনেচার (ম্যাজিক বাইটস)

অপারেটিং সিস্টেম এবং ফাইল অ্যানালাইজারগুলো শুরুর বাইনারি বাইট সিকোয়েন্স পরীক্ষা করে PGM ফাইল শনাক্ত করে:

হেক্স সিগনেচার (অফসেট 0):

50 32 / 50 35

ASCII রিপ্রেজেন্টেশন: P2 / P5

স্ট্যান্ডার্ডাইজেশন: Netpbm Library Standard

প্রযুক্তিগত বৈশিষ্ট্য

কন্টেইনার আর্কিটেকচারwidth, height ও সর্বোচ্চ gray value-সহ ASCII (P2) অথবা binary (P5) Netpbm format; এরপর pixel stream থাকে
কম্প্রেশনআনকমপ্রেসড raw binary byte অথবা মানুষের পড়ার উপযোগী ASCII text number
বাইট এন্ডিয়াননেসBig-Endian (P5 mode-এ 16-bit binary sample-এর জন্য)
কালার স্পেসLinear Grayscale অথবা sRGB Grayscale
চ্যানেল ও কাঠামো1 channel grayscale (8-bit অথবা 16-bit precision)
সর্বোচ্চ মাত্রাকার্যত সীমাহীন (যেকোনো 64-bit coordinate space সমর্থিত)
স্বচ্ছতানেই
স্ট্রিমিং ও প্রোগ্রেসিভসারি ধরে ক্রমানুসারে streaming playback

টেকনিক্যাল তুলনা ম্যাট্রিক্স: PGM বনাম প্রতিযোগীগণ

প্রযুক্তিগত বৈশিষ্ট্যPGM (বর্তমান)PBMPPMPNG
কালার মোডগ্রেস্কেল (8-বিট / 16-বিট)1-বিট মনোক্রোমRGB ট্রু কালার (24-বিট / 48-বিট)গ্রেস্কেল, RGB, RGBA
Netpbm পরিবারের ফরম্যাটPGM (পোর্টেবল গ্রেম্যাপ)PBM (পোর্টেবল বিটম্যাপ)PPM (পোর্টেবল পিক্সম্যাপ)নন-Netpbm W3C স্ট্যান্ডার্ড
ম্যাজিক বাইটসP2 (ASCII) / P5 (বাইনারি)P1 (ASCII) / P4 (বাইনারি)P3 (ASCII) / P6 (বাইনারি)‰PNG....
কম্প্রেশনআনকমপ্রেসডআনকমপ্রেসডআনকমপ্রেসডলসলেস ডিফ্লেট

সাধারণ করাপশন মোড এবং হেক্স রিকভারি গাইড

ছবিটি উল্টো বা পুরোপুরি সাদা দেখায়।

মূল কারণ: হেডারে অমিল 'maxval' প্যারামিটার (যেমন maxval 255-এর পরিবর্তে 1 হিসেবে ঘোষণা করা হয়েছে)।

পুনরুদ্ধার: maxval হেডার লাইনটি সংশোধন করুন অথবা File2File.app Netpbm কনভার্টার দিয়ে ট্রান্সকোড করুন।

নিরাপত্তা বিশ্লেষণ ও পার্সার অ্যাটাক ভেক্টর

PGM ডিকোডারেরা বাফার ওভাররান রোধ করতে সাবধানে যাচাই করবে যে পার্স করা পিক্সেল গণনা ঘোষিত মাত্রার সাথে মেলে কিনা।

পরিচিত অ্যাটাক ভেক্টর

  • প্রস্থ * উচ্চতা * (maxval > 255 ? 2 : 1) বাফার বরাদ্দের সময় পূর্ণসংখ্যা ওভারফ্লো।
  • বিকৃত ASCII নম্বর টোকেন পড়ার সময় বাফার ওভার-রিড।
  • বানানো হেডার ডাইমেনশন দ্বারা প্ররোচিত বিশাল মেমরি বরাদ্দের মাধ্যমে পরিষেবার অস্বীকৃতি (DoS)।

প্রতিরক্ষামূলক সেরা অনুশীলন: পিক্সেল স্ট্রিম পড়ার আগে সর্বাধিক অনুমোদিত মাত্রা এবং মেমরি বরাদ্দের সীমা ক্যাপ করুন।

ঐতিহাসিক উৎপত্তি ও মাইলফলক

2000বৈজ্ঞানিক ইমেজিংয়ের জন্য বাইনারি P5 মোডে 16-বিট ডেপথ (সর্বোচ্চ মান 65535 পর্যন্ত) মানক করা হয়।
1993স্ট্যান্ডার্ড ইন্টারমিডিয়েট গ্রেস্কেল ফরম্যাট হিসেবে Netpbm টুলকিটে অন্তর্ভুক্ত করা হয়।
1989জেফ পসক্যানজার সম্পূর্ণ 256-লেভেল গ্রেস্কেল সমর্থনসহ PBM-এর পরিপূরক হিসেবে PGM তৈরি করেন।

প্রধান সুবিধাসমূহ ও গুণাবলী

  • PGM-এর সংক্ষিপ্ত কাঠামোর কারণে সাধারণ reader তৈরি সহজ হতে পারে; তবে sample depth, header ও ত্রুটিপূর্ণ input সামলাতে সতর্কতা দরকার।
  • নেটিভ 16-বিট গ্রেস্কেল সমর্থন এটিকে হাইটম্যাপ, ডেপথ ম্যাপ এবং থার্মাল ইমেজিংয়ের জন্য আদর্শ করে তোলে।
  • ASCII মোড (P2) স্ট্যান্ডার্ড টেক্সট এডিটরে কাঁচা পিক্সেল মানগুলির সরাসরি পরিদর্শন এবং পরিবর্তন করা যায়।

কারিগরি সীমাবদ্ধতা ও অসুবিধা

  • কোনো কম্প্রেশন নেই: PNG-এর মতো সংকুচিত ফরম্যাটের তুলনায় ফাইলের সাইজ বড় হয়।
  • ভৌত মাত্রা, রঙের স্থান বা জিওলোকেশন সংক্রান্ত মেটাডেটার অভাব রয়েছে।
  • শুধুমাত্র একক-চ্যানেল: রঙের ডেটা বা আলফা স্বচ্ছতা সংরক্ষণ করতে পারে না।

আকর্ষণীয় কারিগরি তথ্য

  • OpenCV, ROS (রোবট অপারেটিং সিস্টেম), এবং মেশিন ভিশন সিস্টেমগুলি SLAM নেভিগেশন ম্যাপের জন্য প্রায়শই PGM ব্যবহার করে।
  • গেম ডেভেলপাররা প্রায়শই 16-বিট PGM ফাইলগুলিকে ভূখণ্ডের হাইটম্যাপ হিসাবে ব্যবহার করে কারণ কাঁচা এলিভেশন ডেটা আনকমপ্রেসড এবং লোড করা সহজ।
  • হেডারে থাকা 'maxval' প্যারামিটারটি সর্বোচ্চ উজ্জ্বলতা মান নির্ধারণ করে (সাধারণত 8-বিটের জন্য 255 বা 16-বিটের জন্য 65535)।

সচরাচর জিজ্ঞাসিত প্রযুক্তিগত প্রশ্নাবলি

PGM ফরম্যাট কী জন্য ব্যবহৃত হয়?

PGM মূলত কম্পিউটার ভিশন (OpenCV), রোবটিক্স (ROS ম্যাপ ফাইল), বৈজ্ঞানিক ইমেজিং এবং 3D টেরেইন হাইটম্যাপ জেনারেশনে ব্যবহৃত হয়।

P2 এবং P5 PGM ফাইলের মধ্যে পার্থক্য কী?

P2 হলো প্লেইন ASCII টেক্সট যেখানে প্রতিটি পিক্সেল একটি লিখিত নম্বর, অন্যদিকে P5 পিক্সেলগুলোকে কম্প্যাক্ট বাইনারি বাইট হিসেবে সংরক্ষণ করে।

কীভাবে আমি PGM কে JPG বা PNG-তে রূপান্তর করতে পারি?

সম্পূর্ণ গোপনীয়তার সাথে সরাসরি আপনার ব্রাউজারে PNG বা JPG-তে রূপান্তর করতে আপনার PGM ফাইল File2File.app-এ আপলোড করুন।