পোর্টেবল এনি ম্যাপ (PNM) ফরম্যাট হল একটি সরল ইমেজ ফাইল ফরম্যাট যা বিভিন্ন প্ল্যাটফর্মের মধ্যে ইমেজ ডেটা বিনিময়কে সহজ করার জন্য ডিজাইন করা হয়েছে। এটি নেটপিবিএম (পোর্টেবল বিটম্যাপ, পোর্টেবল গ্রে ম্যাপ, পোর্টেবল পিক্সম্যাপ) এর ছাতার নিচে থাকা ফরম্যাটের একটি পরিবারকে উল্লেখ করে, প্রতিটিটি একটি নির্দিষ্ট ধরনের ইমেজের জন্য ডিজাইন করা হয়েছে। PNM ফরম্যাটের সৌন্দর্য এর সরলতা এবং ইমেজের সরাসরি উপস্থাপনায় রয়েছে, ইমেজ পিক্সেল স্টোর করার জন্য ASCII বা বাইনারি ডেটা ব্যবহার করে, এটি জটিল পার্সিং লাইব্রেরি বা টুলের প্রয়োজন ছাড়াই প্রোগ্রাম্যাটিকভাবে পড়া এবং লেখা অসাধারণভাবে সহজ করে তোলে।
PNM ফাইলগুলিকে তা দের এনকোডিংয়ের উপর ভিত্তি করে দুটি প্রধান ধরনে শ্রেণীবদ্ধ করা হয়েছে: ASCII (প্লেইন) ফরম্যাট, যা বিটম্যাপ, গ্রে ম্যাপ এবং পিক্সম্যাপের জন্য যথাক্রমে 'P1', 'P2' এবং 'P3' ম্যাজিক নম্বর দ্বারা নির্দেশিত; এবং বাইনারি (র) ফরম্যাট, 'P4', 'P5' এবং 'P6' ম্যাজিক নম্বর দ্বারা উপস্থাপিত। ASCII ফরম্যাটগুলি আরও মানুষের পড়ার উপযোগী এবং পার্স করা সহজ তবে ফাইলের আকার এবং প্রক্রিয়াকরণের গতির দিক থেকে তাদের বাইনারি প্রতিরূপের তুলনায় কম দক্ষ, যা বাস্তব-বিশ্বের অ্যাপ্লিকেশনগুলির জন্য আরও উপযুক্ত যেখানে কর্মক্ষমতা এবং স্টোরেজ দক্ষতা গুরুত্বপূর্ণ।
প্রতিটি PNM ফাইল একটি হেডার দিয়ে শুরু হয় যার মধ্যে একটি ম্যাজিক নম্বর রয়েছে যা ইমেজের ধরন (PBM, PGM, PPM) নির্দেশ করে, তারপরে হোয়াইটস্পেস, ইমেজের মাত্রা (প্রস্থ এবং উচ্চতা) হোয়াইটস্পেস দ্বারা পৃথক করা হয় এবং PGM এবং PPM ফাইলের জন্য, সর্বাধিক রঙের মান (আবার হোয়াইটস্পেস দ্বারা অনুসরণ করা হয়) রঙের গভীরতা নির্দেশ করে। হেডারটি সহজ, তবে এতে ফাইলের বাকি অংশটি ব্যাখ্যা করার জন্য প্রয়োজনীয় সমস্ত প্রয়োজনীয় তথ্য রয়েছে, যা পিক্সেল ডেটা নিয়ে গঠিত।
একটি PNM ফাইলে পিক্সেল ডেটা এর ধরন অনুযায়ী আলাদাভাবে স্টোর করা হয়। PBM ফাইলের জন্য, প্রতিটি পিক্সেলকে একটি বাইনারি মান (0 বা 1) দ্বারা উপস্থাপন করা হয় যা কালো বা সাদা নির্দেশ করে। PGM ফাইলগুলি প্রতিটি পিক্সেলকে একটি গ্রেস্কেল মান হিসাবে স্টোর করে, সাধারণত 0 (কালো) থেকে নির্দিষ্ট সর্বাধিক মান (সাদা) পর্যন্ত। PPM ফাইলগুলি, রঙিন ইমেজ হওয়ায়, প্রতিটি পিক্সেলকে তিনটি পৃথক মান (লাল, সবুজ এবং নীল) হিসাবে স্টোর করে, প্রতিটি 0 থেকে নির্দিষ্ট সর্বাধিক মান পর্যন্ত। ASCII ফরম্যাটে, এই মানগুলি হোয়াইটস্পেস দ্বারা পৃথক করা ASCII সংখ্যা হিসাবে উপস্থাপন করা হয়, যখন বাইনারি ফরম্যাটে, এগুলি বাইনারি সংখ্যা হিসাবে স্টোর করা হয়, যা আরও সংক্ষিপ্ত উপস্থাপনার অনুমতি দেয়।
PNM ফরম্যাটের অনন্য বৈশিষ্ট্যগুলির মধ্যে একটি হল এর এক্সটেনসিবিলিটি এবং সংশোধনের সহজতা। এর সরাসরি কাঠামোর কারণে, ডেভেলপারদের জন্য PNM ফাইলগুলিকে ম্যানিপুলেট করার প্রোগ্রাম তৈরি করা তুলনামূলকভাবে সহজ। উদাহরণস্বরূপ, বিভিন্ন PNM ফরম্যাটের মধ্যে রূপান্তর, ইমেজের মাত্রা পরিবর্তন করা বা রঙের গভীরতা পরিবর্তন করা সহজ প্রোগ্রামিং কৌশল দ্বারা অর্জন করা যেতে পারে। এটি PNM ফরম্যাটকে শিক্ষামূলক উদ্দেশ্যে একটি দুর্দান্ত পছন্দ করে তোলে, যেখানে ডিজিটাল ইমেজিং এবং প্রোগ্রামিংয়ের মূল বিষয়গুলি বোঝা প্রয়োজন।
সরলতা এবং এক্সটেনসিবিলিটিতে এর সুবিধা সত্ত্বেও, PNM ফরম্যাটের উল্লেখযোগ্য সীমাবদ্ধতা রয়েছে। EXIF (এক্সচেঞ্জেবল ইমেজ ফাইল ফরম্যাট) ডেটা যেমন মেটেডেটার জন্য সমর্থনের অভাব, যা ক্যামেরা থেকে সেটিংস যেমন অ্যাপারচার, এক্সপোজার সময় এবং ISO স্পিড ধারণ করে, পেশাদার ফটোগ্রাফি এবং আধুনিক অ্যাপ্লিকেশনগুলিতে PNM এর উপযোগকে সীমাবদ্ধ করে যা মেটেডেটার উপর ব্যাপকভাবে নির্ভর করে। তাছাড়া, PNM ফাইলগুলিতে কম্প্রেশন মেকানিজমের অনুপস্থিতির ফলে JPEG বা PNG এর মতো ফরম্যাটের তুলনায় বড় ফাইলের আকার হয়, যা ইমেজ ডেটা দক্ষতার সাথে স্টোর করার জন্য জটিল অ্যালগরিদম ব্যবহার করে।
এই সীমাবদ্ধতাগুলির কিছু কমাতে, নেটপিবিএম পরিবার থেকে উদ্ভূত উচ্চ-স্তরের ফরম্যাট, যেমন পোর্টেবল আর্বিট্রারি ম্যাপ (PAM), তৈরি করা হয়েছে। PAM কে PNM এর একটি আরও নমনীয় এবং আধুনিক বিকল্প হিসাবে ডিজাইন করা হয়েছে, যা আরও বিভিন্ন রঙের গভীরতা এবং চ্যানেলের অনুমতি দেয়, স্বচ্ছতা সহ। PAM ফাইলগুলি 'P7' এর একটি ম্যাজিক নম্বর ব্যবহার করে এবং এই উন্নত বৈশিষ্ট্যগুলি সামঞ্জস্য করার জন্য অতিরিক্ত হেডার ক্ষেত্র প্রবর্তন করে। যাইহোক, এই উন্নতিগুলি সহ, PAM এবং PNM ফরম্যাটগুলি শিক্ষামূলক এবং