ไทย

รูปภาพและภาพถ่าย · โปรแกรมแก้ไขรูปภาพและภาพวาดของเบราว์เซอร์

เหตุใดการแก้ไขภาพถ่ายขนาด 12 ล้านพิกเซลในเบราว์เซอร์จึงต้องมี 48 MB

· มันทำงานอย่างไร

การแก้ไขภาพ ผ้าใบ การประมวลผลเบราว์เซอร์

ภาพประกอบแรสเตอร์แบบนามธรรมว่าทำไมการแก้ไขภาพถ่ายขนาด 12 ล้านพิกเซลในเบราว์เซอร์จึงต้องใช้ 48 mb
ภาพประกอบเวกเตอร์ต้นฉบับ ToolAcre

3 MB JPEG จะกลายเป็นหลายสิบเมกะไบต์ทันทีที่มีการถอดรหัส เนื่องจากทุกพิกเซลต้องการหน่วยความจำสี่ไบต์ โพสต์นี้จะอธิบายเกี่ยวกับเลขคณิต เหตุใดเครื่องมือเบราว์เซอร์จึงถูกจำกัดด้วยหน่วยความจำของอุปกรณ์ แทนที่จะจำกัดการอัปโหลด และสิ่งที่ควรทำเมื่อไฟล์มีขนาดใหญ่เกินไป

รูปภาพที่เปิดช้าหรือไม่เปิดเลย ปัญหาที่อยู่เบื้องหลังโปรแกรมแก้ไขเบราว์เซอร์ค้างในไฟล์กล้องขนาดใหญ่

เมกะไบต์ที่บีบอัดไม่ได้ทำนายรอยเท้าการแก้ไขที่ถอดรหัส เริ่มต้นด้วยรูปภาพที่เปิดช้าหรือไม่เปิดเลย นั่นคือปัญหาในทางปฏิบัติเบื้องหลังโปรแกรมแก้ไขเบราว์เซอร์ที่ค้างกับไฟล์กล้องขนาดใหญ่ สำหรับการคำนวณหน่วยความจำนี้ กฎที่นำไปใช้คือ RGBA การประมาณการสแนปชอตใช้สี่ไบต์ต่อพิกเซล ดังนั้นสิบสองล้านพิกเซลจึงต้องการ 48,000,000 bytes สำหรับหนึ่งบิตแมปก่อนที่จะทำการคัดลอก ไฟล์อินพุตถูกจำกัดไว้ที่ 40 MB ในขณะที่ขนาดที่ถอดรหัสจะถูกจำกัดอย่างอิสระที่ 8,192 ต่อด้านและงบประมาณพิกเซลของอุปกรณ์

คูณความกว้างด้วยความสูงด้วยสี่สำหรับสำเนา RGBA หนึ่งสำเนา จากนั้นเปรียบเทียบแหล่งที่มากับขนาดที่ลดลงซึ่งรายงานหลังจากเปิด งบประมาณเริ่มต้นคือ 33,177,600 พิกเซล และเส้นทาง iOS ใช้ 16,777,216; แหล่งที่มาขนาดใหญ่จะลดลงพร้อมแจ้งให้ทราบ แคนวาสและประวัติการทำงานสามารถเพิ่มสำเนาได้ ดังนั้นนี่คือพื้นฐาน ไม่ใช่สัญญาหน่วยความจำแท็บทั้งหมด

ขนาดไฟล์เทียบกับขนาดที่ถอดรหัส - เหตุใดการบีบอัดจึงทำให้ไฟล์มีขนาดเล็ก แต่ตัวแก้ไขต้องทำงานกับทุกพิกเซลที่ไม่มีการบีบอัด

เมกะไบต์ที่บีบอัดไม่ได้ทำนายรอยเท้าการแก้ไขที่ถอดรหัส แยกขนาดไฟล์ออกจากขนาดที่ถอดรหัส: การบีบอัดทำให้ JPEG เล็กบนดิสก์ แต่ตัวแก้ไขจะต้องทำงานกับทุกพิกเซลที่ไม่มีการบีบอัด สำหรับการคำนวณหน่วยความจำนี้ กฎที่นำไปใช้คือ ไฟล์อินพุตจะถูกจำกัดไว้ที่ 40 MB ในขณะที่ขนาดที่ถอดรหัสจะถูกจำกัดโดยอิสระที่ 8,192 ต่อด้านและงบประมาณพิกเซลของอุปกรณ์ งบประมาณเริ่มต้นคือ 33,177,600 พิกเซล และเส้นทาง iOS ใช้ 16,777,216; แหล่งที่มาขนาดใหญ่จะลดลงตามสัดส่วนโดยแจ้งให้ทราบล่วงหน้า

คูณความกว้างด้วยความสูงด้วยสี่สำหรับสำเนา RGBA หนึ่งสำเนา จากนั้นเปรียบเทียบแหล่งที่มากับขนาดที่ลดลง การเลิกทำจะคงขั้นตอนไว้สูงสุดสี่สิบขั้นตอนและประมาณ 96 MiB โดยจะลบรายการที่เก่าที่สุดออก ขณะเดียวกันก็รักษาการกระทำที่ใหญ่โตเพียงรายการเดียวที่ไม่สามารถเลิกทำได้ พื้นที่การทำงานจะเพิ่มสำเนา ดังนั้นตัวเลขบิตแมปเดียวจึงเป็นเพียงข้อมูลพื้นฐานเท่านั้น

สี่ไบต์ต่อพิกเซล: เลขคณิต — กว้าง × สูง × RGBA ให้ 48 MB สำหรับ 12 ล้านพิกเซล และอื่นๆ สำหรับสำเนาการทำงาน

เมกะไบต์ที่บีบอัดไม่ได้ทำนายรอยเท้าการแก้ไขที่ถอดรหัส เลขคณิตที่สำคัญคือสี่ไบต์ต่อพิกเซล: ความกว้างคูณด้วยความสูง และ RGBA ให้ 48 MB สำหรับสิบสองเมกะพิกเซล ก่อนการคัดลอกการทำงานใดๆ สำหรับการคำนวณหน่วยความจำนี้ กฎที่นำไปใช้คือ งบประมาณเริ่มต้นคือ 33,177,600 พิกเซล และเส้นทาง iOS ใช้ 16,777,216; แหล่งที่มาขนาดใหญ่จะลดลงตามสัดส่วนโดยแจ้งให้ทราบล่วงหน้า การเลิกทำจะคงไว้สูงสุดสี่สิบขั้นตอนและประมาณ 96 MiB โดยจะลบรายการที่เก่าที่สุดออกไป ขณะเดียวกันก็รักษาการดำเนินการขนาดใหญ่พิเศษไว้หนึ่งรายการซึ่งไม่สามารถเลิกทำได้

คูณความกว้างด้วยความสูงด้วยสี่สำหรับสำเนา RGBA หนึ่งสำเนา จากนั้นเปรียบเทียบแหล่งที่มากับขนาดที่ลดลง การประมาณการสแนปชอต RGBA ใช้สี่ไบต์ต่อพิกเซล ดังนั้นสิบสองล้านพิกเซลจึงต้องใช้ 48,000,000 bytes ก่อนที่จะทำการคัดลอก ผืนผ้าใบการทำงานและประวัติจะเพิ่มสำเนา ดังนั้นตัวเลขบิตแมปเดียวจึงเป็นพื้นฐาน

ขีดจำกัดมาจากที่ใด - ตัวพิมพ์ใหญ่ขนาด Canvas ของเบราว์เซอร์ หน่วยความจำต่อแท็บ และความแตกต่างระหว่างโทรศัพท์และเดสก์ท็อป

เมกะไบต์ที่บีบอัดไม่ได้ทำนายรอยเท้าการแก้ไขที่ถอดรหัส ขีดจำกัดมาจากหลายจุด ได้แก่ ขนาด Canvas ของเบราว์เซอร์ หน่วยความจำต่อแท็บ และความแตกต่างระหว่างโทรศัพท์และเดสก์ท็อป สำหรับการคำนวณหน่วยความจำนี้ กฎที่นำไปใช้คือ เลิกทำ โดยจะคงขั้นตอนไว้สูงสุดสี่สิบขั้นตอนและประมาณ 96 MiB โดยจะไล่รายการที่เก่าที่สุดออกในขณะที่ยังคงรักษาการดำเนินการขนาดใหญ่เกินหนึ่งรายการไว้ซึ่งไม่สามารถเลิกทำได้ การประมาณการสแนปชอต RGBA ใช้สี่ไบต์ต่อพิกเซล ดังนั้น 12 ล้านพิกเซลจึงต้องใช้ 48,000,000 bytes สำหรับหนึ่งบิตแมปก่อนที่จะทำการคัดลอก

คูณความกว้างด้วยความสูงด้วยสี่สำหรับสำเนา RGBA หนึ่งสำเนา จากนั้นเปรียบเทียบแหล่งที่มากับขนาดที่ลดลง ไฟล์อินพุตถูกจำกัดไว้ที่ 40 MB ในขณะที่ขนาดที่ถอดรหัสจะถูกจำกัดอย่างอิสระที่ 8,192 ต่อด้านและงบประมาณพิกเซลของอุปกรณ์ ผืนผ้าใบการทำงานและประวัติจะเพิ่มสำเนา ดังนั้นตัวเลขบิตแมปเดียวจึงเป็นพื้นฐาน

ขีดจำกัดที่นำไปใช้คืองบประมาณพิกเซลและมิติ ไม่ใช่การคาดเดาผลรวมหน่วยความจำต่อแท็บ

เมกะไบต์ที่บีบอัดไม่ได้ทำนายรอยเท้าการแก้ไขที่ถอดรหัส โมเดลโลคัลหมายถึงหน่วยความจำอุปกรณ์ ไม่ใช่พูลการประมวลผลภาพฝั่งเซิร์ฟเวอร์ เป็นเพดานที่ใช้งานได้จริง สำหรับการคำนวณหน่วยความจำนี้ กฎที่นำไปใช้คือ RGBA การประมาณการสแนปชอตใช้สี่ไบต์ต่อพิกเซล ดังนั้นสิบสองล้านพิกเซลจึงต้องการ 48,000,000 bytes สำหรับหนึ่งบิตแมปก่อนที่จะทำการคัดลอก ไฟล์อินพุตถูกจำกัดไว้ที่ 40 MB ในขณะที่ขนาดที่ถอดรหัสจะถูกจำกัดอย่างอิสระที่ 8,192 ต่อด้านและงบประมาณพิกเซลของอุปกรณ์

คูณความกว้างด้วยความสูงด้วยสี่สำหรับสำเนา RGBA หนึ่งสำเนา จากนั้นเปรียบเทียบแหล่งที่มากับขนาดที่ลดลง งบประมาณเริ่มต้นคือ 33,177,600 พิกเซล และเส้นทาง iOS ใช้ 16,777,216; แหล่งที่มาขนาดใหญ่จะลดลงพร้อมแจ้งให้ทราบ ผืนผ้าใบและประวัติการทำงานเพิ่มสำเนา ดังนั้นนี่คือพื้นฐาน

อินพุตไฟล์มีขีดจำกัดการตรวจสอบ 40 MB แม้ว่าไม่มีการอัปโหลดรูปภาพเกิดขึ้นก็ตาม

เมกะไบต์ที่บีบอัดไม่ได้ทำนายรอยเท้าการแก้ไขที่ถอดรหัส ลองพิจารณารูปภาพ 6000×4000: สำเนา RGBA แบบเต็มหนึ่งสำเนาจะมี 96,000,000 bytes ก่อนการติดตั้งอุปกรณ์ ประวัติ หรือผืนผ้าใบอื่นๆ สำหรับการคำนวณหน่วยความจำนี้ กฎที่นำไปใช้คือ ไฟล์อินพุตจะถูกจำกัดไว้ที่ 40 MB ในขณะที่ขนาดที่ถอดรหัสจะถูกจำกัดโดยอิสระที่ 8,192 ต่อด้านและงบประมาณพิกเซลของอุปกรณ์ งบประมาณเริ่มต้นคือ 33,177,600 พิกเซล และเส้นทาง iOS ใช้ 16,777,216; แหล่งที่มาขนาดใหญ่จะลดลงตามสัดส่วนโดยแจ้งให้ทราบล่วงหน้า

คูณความกว้างด้วยความสูงด้วยสี่สำหรับสำเนา RGBA หนึ่งสำเนา จากนั้นเปรียบเทียบแหล่งที่มากับขนาดที่ลดลง การเลิกทำจะคงขั้นตอนไว้สูงสุดสี่สิบขั้นตอนและประมาณ 96 MiB โดยจะลบรายการที่เก่าที่สุดออก ขณะเดียวกันก็รักษาการกระทำที่ใหญ่โตเพียงรายการเดียวที่ไม่สามารถเลิกทำได้ แคนวาสที่ทำงานจะเพิ่มสำเนา ดังนั้นนี่คือพื้นฐาน

ตัวอย่างการทำงาน: แหล่งที่มา 6000×4000 ต้องการ 96,000,000 bytes ต่อสำเนา RGBA ก่อนการติดตั้งอุปกรณ์

เมกะไบต์ที่บีบอัดไม่ได้ทำนายรอยเท้าการแก้ไขที่ถอดรหัส ซึ่งไม่ครอบคลุมถึงขีดจำกัดต่อเบราว์เซอร์ที่แน่นอน ซึ่งเปลี่ยนแปลงระหว่างเวอร์ชัน หรือลักษณะการทำงานของหน่วยความจำของรูปแบบ RAW และ HDR สำหรับการคำนวณหน่วยความจำนี้ กฎที่นำไปใช้คือ งบประมาณเริ่มต้นคือ 33,177,600 พิกเซล และเส้นทาง iOS ใช้ 16,777,216; แหล่งที่มาขนาดใหญ่จะลดลงตามสัดส่วนโดยแจ้งให้ทราบล่วงหน้า การเลิกทำจะคงไว้สูงสุดสี่สิบขั้นตอนและประมาณ 96 MiB โดยจะลบรายการที่เก่าที่สุดออกไป ขณะเดียวกันก็รักษาการดำเนินการขนาดใหญ่พิเศษไว้หนึ่งรายการซึ่งไม่สามารถเลิกทำได้

คูณความกว้างด้วยความสูงด้วยสี่สำหรับสำเนา RGBA หนึ่งสำเนา จากนั้นเปรียบเทียบแหล่งที่มากับขนาดที่ลดลง การประมาณการสแนปชอต RGBA ใช้สี่ไบต์ต่อพิกเซล ดังนั้นสิบสองล้านพิกเซลจึงต้องใช้ 48,000,000 bytes ก่อนที่จะทำการคัดลอก ผืนผ้าใบและประวัติการทำงานเพิ่มสำเนา ดังนั้นนี่คือพื้นฐาน

ความรู้เบื้องต้น: รู้เลขคณิตแล้วแก้ไข — วิธีที่ Browser Image & Drawing Editor จัดการกับไฟล์ขนาดใหญ่ในเครื่อง และจะทำอย่างไรหากอุปกรณ์ทำงานไม่เพียงพอ

เมกะไบต์ที่บีบอัดไม่ได้ทำนายรอยเท้าการแก้ไขที่ถอดรหัส สิ่งสำคัญคือการรู้เลขคณิตก่อนแก้ไข: Browser Image & Drawing Editor จัดการไฟล์ขนาดใหญ่ในเครื่อง แต่อุปกรณ์ยังคงทำงานได้ไม่เต็มที่ สำหรับการคำนวณหน่วยความจำนี้ กฎที่นำไปใช้คือ เลิกทำ โดยจะคงขั้นตอนไว้สูงสุดสี่สิบขั้นตอนและประมาณ 96 MiB โดยจะไล่รายการที่เก่าที่สุดออกในขณะที่ยังคงรักษาการดำเนินการขนาดใหญ่เกินหนึ่งรายการไว้ซึ่งไม่สามารถเลิกทำได้ การประมาณการสแนปชอต RGBA ใช้สี่ไบต์ต่อพิกเซล ดังนั้น 12 ล้านพิกเซลจึงต้องใช้ 48,000,000 bytes สำหรับหนึ่งบิตแมปก่อนที่จะทำการคัดลอก

คูณความกว้างด้วยความสูงด้วยสี่สำหรับสำเนา RGBA หนึ่งสำเนา จากนั้นเปรียบเทียบแหล่งที่มากับขนาดที่ลดลง ไฟล์อินพุตถูกจำกัดไว้ที่ 40 MB ในขณะที่ขนาดที่ถอดรหัสจะถูกจำกัดอย่างอิสระที่ 8,192 ต่อด้านและงบประมาณพิกเซลของอุปกรณ์ ผืนผ้าใบและประวัติการทำงานเพิ่มสำเนา ดังนั้นนี่คือพื้นฐาน