รูปแบบ PBM (Portable Bitmap) เป็นหนึ่งในรูปแบบไฟล์กราฟิกที่ง่ายที่สุดและเก่าแก่ที่สุดที่ใช้สำหรับจัดเก็บภาพขาวดำ เป็นส่วนหนึ่งของชุด Netpbm ซึ่งรวมถึง PGM (Portable GrayMap) สำหรับภาพโทนสีเทาและ PPM (Portable PixMap) สำหรับภาพสี รูปแบบ PBM ออกแบบมาให้สามารถอ่านและเขียนได้ง่ายมากในโปรแกรม และให้มีความชัดเจนและไม่คลุมเครือ ไม่ได้มีจุดประสงค์ให้เป็นรูปแบบที่แยกออกมา แต่เป็นตัวส่วนร่วมที่น้อยที่สุดสำหรับการแปลงระหว่างรูปแบบภาพที่แตกต่างกัน
รูปแบบ PBM รองรับเฉพาะภาพขาวดำ (1 บิต) พิกเซลแต่ละพิกเซลในภาพแสดงด้วยบิตเดียว 0 สำหรับสีขาวและ 1 สำหรับสีดำ ความเรียบง่ายของรูปแบบทำให้สามารถจัดการได้โดยตรงโดยใช้เครื่องมือแก้ไขข้อความพื้นฐานหรือภาษาโปรแกรมโดยไม่จำเป็นต้องใช้ไลบรารีการประมวลผล ภาพเฉพาะ อย่างไรก็ตาม ความเรียบง่ายนี้ยังหมายความว่าไฟล์ PBM อาจมีขนาดใหญ่กว่ารูปแบบที่ซับซ้อนกว่า เช่น JPEG หรือ PNG ซึ่งใช้ขั้นตอนวิธีการบีบอัดเพื่อลดขนาดไฟล์
มีรูปแบบ PBM สองแบบ ได้แก่ รูปแบบ ASCII (ธรรมดา) ที่เรียกว่า P1 และรูปแบบไบนารี (ดิบ) ที่เรียกว่า P4 รูปแบบ ASCII สามารถอ่านได้โดยมนุษย์และสามารถสร้างหรือแก้ไขได้ด้วยโปรแกรมแก้ไขข้อความง่ายๆ รูปแบบไบนารีไม่สามารถอ่านได้โดยมนุษย์ แต่ใช้พื้นที่ได้อย่างมีประสิทธิภาพมากกว่าและโปรแกรมสามารถอ่านและเขียนได้เร็วกว่า แม้จะมีความแตกต่างในการจัดเก็บ แต่ทั้งสองรูปแบบแสดงข้อมูลภาพประเภทเดียวกันและสามารถแปลงระหว่างกันได้โดยไม่สูญเสียข้อมูล
โครงสร้างของไฟล์ PBM ในรูปแบบ ASCII เริ่มต้นด้วยหมายเลขวิเศษสองไบต์ที่ระบุชนิดไฟล์ สำหรับรูปแบบ PBM ASCII จะเป็น 'P1' ถัดจากหมายเลขวิเศษจะมีช่องว่าง (ช่องว่าง แท็บ CR LF) จากนั้นเป็นข้อกำหนดความกว้าง ซึ่งเป็นจำนวนคอลัมน์ในภาพ ตามด้วยช่องว่างเพิ่มเติม จากนั้นเป็นข้อกำหนดความสูง ซึ่งเป็นจำนวนแถวในภาพ หลังจากข้อกำหนดความสูงจะมีช่องว่างเพิ่มเติม จากนั้นข้อมูลพิกเซลจะเริ่มต้นขึ้น
ข้อมูลพิกเซลในไฟล์ PBM แบบ ASCII ประกอบด้วยชุดของ '0' และ '1' โดย '0' แต่ละตัวแทนพิกเซลสีขาวและ '1' แต่ละตัวแทนพิกเซลสีดำ พิกเซลจะจัดเรียงเป็นแถว โดยแต่ละแถวของพิกเซลจะอยู่ในบรรทัดใหม่ อนุญาตให้มีช่องว่างได้ทุกที่ในข้อมูลพิกเซล ยกเว้นภายในลำดับอักขระสองตัว (ไม่อนุญาตให้มีช่องว่างระหว่างอักขระสองตัวของลำดับ) จะถึงจุดสิ้นสุดของไฟล์หลังจากอ่านบิต width*height
ในทางตรงกันข้าม รูปแบบ PBM ไบนารีจะเริ่มต้นด้วยหมายเลขวิเศษ 'P4' แทนที่จะเป็น 'P1' หลังจากหมายเลขวิเศษ รูปแบบของไฟล์จะเหมือนกับ เวอร์ชัน ASCII จนกว่าข้อมูลพิกเซลจะเริ่มต้นขึ้น ข้อมูลพิกเซลไบนารีจะถูกจัดเก็บเป็นไบต์ โดยบิตที่มีนัยสำคัญที่สุด (MSB) ของแต่ละไบต์แทนพิกเซลที่อยู่ซ้ายสุด และแต่ละแถวของพิกเซลจะถูกเติมเต็มตามความจำเป็นเพื่อเติมไบต์สุดท้าย บิตเติมเต็มไม่มีนัยสำคัญและค่าของบิตเหล่านั้นจะถูกละเว้น
รูปแบบไบนารีใช้พื้นที่ได้อย่างมีประสิทธิภาพมากกว่าเนื่องจากใช้ไบต์เต็มเพื่อแทนพิกเซลแปดพิกเซล ซึ่งต่างจากรูปแบบ ASCII ที่ใช้ไบต์อย่างน้อยแปดไบต์ (หนึ่งอักขระต่อพิกเซลบวกช่องว่าง) อย่างไรก็ตาม รูปแบบไบนารีไม่สามารถอ่านได้โดยมนุษย์และต้องใช้โปรแกรมที่เข้าใจรูปแบบ PBM เพื่อแสดงหรือแก้ไขภาพ
การสร้างไฟล์ PBM ด้วยโปรแกรมค่อนข้างง่าย ในภาษาโปรแกรม เช่น C จะเปิดไฟล์ในโหมดเขียน เอาต์พุตหมายเลขวิเศษที่เหมาะสม เขียนความกว้างและความสูงเป็นตัวเลข ASCII ที่คั่นด้วยช่องว่าง จากนั้นเอาต์พุตข้อมูลพิกเซล สำหรับ PBM แบบ ASCII ข้อมูลพิกเซลสามารถเขียนเป็นชุดของ '0' และ '1' พร้อมแบ่งบรรทัดที่เหมาะสม สำหรับ PBM แบบไบนารี ข้อมูลพิกเซลจะต้องถูกจัดเก็บเป็นไบต์และเขียนลงในไฟล์ในโหมดไบนารี
การอ่านไฟล์ PBM ก็ง่ายเช่นกัน โปรแกรมจะอ่านหมายเลขวิเศษเพื่อกำหนดรูปแบบ ข้ามช่องว่าง อ่านความกว้างและความสูง ข้ามช่องว่างเพิ่มเติม จากนั้นอ่านข้อมูลพิกเซล สำหรับ PBM แบบ ASCII โปรแกรมสามารถอ่านอักขระทีละตัวและตีความเป็นค่าพิกเซล สำหรับ PBM แบบไบนารี โปรแกรมจะต้องอ่านไบต์และแยกออกเป็นบิตแต่ละบิตเพื่อรับค่าพิกเซล
รูปแบบ PBM ไม่รองรับการบีบอัดหรือการเข้ารหัสใดๆ ซึ่งหมายความว่าขนาดไฟล์จะแปรผันโดยตรงกับจำนวนพิกเซลในภาพ สิ่งนี้อาจส่งผลให้ไฟล์มีขนาดใหญ่มากสำหรับภาพความละเอียดสูง อย่างไรก็ตาม ความเรียบง่ายของรูปแบบทำให้เหมาะสำหรับการเรียนรู้เกี่ยวกับการประมวลผลภาพ เพื่อใช้ในสถานการณ์ที่ความเที่ยงตรงของภาพมีความสำคัญมากกว่าขนาดไฟล์ หรือเพื่อใช้เป็นรูปแบบตัวกลางในกระบวนการแปลงภาพ
ข้อดีอย่างหนึ่งของรูปแบบ PBM คือความเรียบง่ายและความง่ายในการจัดการ ตัวอย่างเช่น ในการกลับภาพ PBM (เปลี่ยนพิกเซลสีดำทั้งหมดให้เป็นสีขาวและในทางกลับกัน) เพียงแค่แทนที่ '0' ทั้งหมดด้วย '1' และ '1' ทั้งหมดด้วย '0' ในข้อมูลพิกเซล สิ่งนี้สามารถทำได้ด้วยสคริปต์หรือโปรแกรมประมวลผลข้อความง่ายๆ ในทำนองเดียวกัน การดำเนินการกับภาพพื้นฐานอื่นๆ เช่น การหมุนหรือการสะท้อนสามารถใช้ขั้นตอนวิธีการง่ายๆ ได้
แม้จะมีความเรียบง่าย แต่รูปแบบ PBM ก็ไม่ได้ใช้กันอย่างแพร่หลายสำหรับการจัดเก็บหรือแลกเปลี่ยนภาพทั่วไป สาเหตุหลักมาจ ากการที่ไม่มีการบีบอัด ซึ่งทำให้ไม่มีประสิทธิภาพสำหรับการจัดเก็บภาพขนาดใหญ่หรือสำหรับการใช้งานผ่านอินเทอร์เน็ตที่แบนด์วิดท์อาจเป็นปัญหา รูปแบบที่ทันสมัยกว่า เช่น JPEG, PNG และ GIF มีการบีบอัดในรูปแบบต่างๆ และเหมาะกว่าสำหรับวัตถุประสงค์เหล่านี้ อย่างไรก็ตาม รูปแบบ PBM ยังคงใช้ในบางบริบท โดยเฉพาะอย่างยิ่งสำหรับกราฟิกง่ายๆ ในการพัฒนาซอฟต์แวร์ และเป็นเครื่องมือสอนสำหรับแนวคิดการประมวลผลภาพ
ชุด Netpbm ซึ่งรวมถึงรูปแบบ PBM มีชุดเครื่องมือสำหรับจัดการไฟล์ PBM, PGM และ PPM เครื่องมือเหล่านี้ช่วยให้สามารถแปลงระหว่างรูปแบบ Netpbm และรูปแบบภาพยอดนิยมอื่นๆ รวมถึงการดำเนินการประมวลผลภาพพื้นฐาน เช่น การปรับขนาด การครอบตัด และการจัดการสี ชุดนี้ได้รับการออกแบบให้ขยายได้ง่าย โดยมีอินเทอร์เฟซที่เรียบง่ายสำหรับการเพิ่มฟังก์ชันการทำงานใหม่
โดยสรุป รูปแบบภาพ PBM เป็นรูปแบบไฟล์ที่เรียบง่ายและไม่มีอะไรพิเศษสำหรับการจัดเก็บภาพบิตแมปขาวดำ ความเรียบง่ายทำให้เข้าใจและจัดการได้ง่าย ซึ่งอาจเป็นประโยชน์สำหรับวัตถุประสงค์ทางการศึกษาหรือสำหรับงานประมวลผลภาพง่ายๆ แม้ว่าจะไม่เหมาะสำหรับทุกแอปพลิเคชันเนื่องจากไม่มีการบีบอัดและส่งผลให้ขนาดไฟล์มีขนาดใหญ่ แต่ก็ยังคงเป็นรูปแบบที่มีประโยชน์ในบริบทเฉพาะที่จุดแข็งของรูปแบบนั้นมีประโยชน์มากที่สุด รูปแบบ PBM พร้อมกับชุด Netpbm ที่เหลือยังคงเป็นเครื่องมือที่มีค่าสำหรับผู้ที่ทำงานกับการประมวลผลภาพพื้นฐานและการแปลงรูปแบบ
ตัวแปลงนี้ทำงานทั้งหมดในเบราว์เซอร์ของคุณ เมื่อคุณเลือก ไฟล์ มันจะถูกอ่านเข้าสู่หน่วยความจำและแปลงเป็นรูปแบบที่เลือก คุณสามารถดาวน์โหลดไฟล์ที่แปลงแล้วได้.
การแปลงเริ่มทันที และไฟล์ส่วนใหญ่ถูกแปลงใน ภายใต้วินาที ไฟล์ขนาดใหญ่อาจใช้เวลานานขึ้น.
ไฟล์ของคุณไม่เคยถูกอัปโหลดไปยังเซิร์ฟเวอร์ของเรา พวกเขา ถูกแปลงในเบราว์เซอร์ของคุณ และไฟล์ที่แปลงแล้วจากนั้น ดาวน์โหลด เราไม่เคยเห็นไฟล์ของคุณ.
เราสนับสนุนการแปลงระหว่างทุกรูปแบบภาพ รวมถึง JPEG, PNG, GIF, WebP, SVG, BMP, TIFF, และอื่น ๆ อีกมากมาย.
ตัวแปลงนี้เป็นฟรีและจะเป็นฟรีตลอดไป เนื่องจากมันทำงานในเบราว์เซอร์ของคุณ เราไม่ต้องจ่ายเงินสำหรับ เซิร์ฟเวอร์ ดังนั้นเราไม่จำเป็นต้องเรียกเก็บค่าใช้จ่ายจากคุณ.
ใช่! คุณสามารถแปลงไฟล์เท่าที่คุณต้องการในครั้งเดี ยว แค่ เลือกไฟล์หลายไฟล์เมื่อคุณเพิ่มพวกเขา.