इमेजचा फाइल आकार कसा कमी करायचा
अपलोड फॉर्मला 2 MB पेक्षा कमी हवं आहे आणि माझा फोटो 8 MB चा आहे. मी नेमकं काय बदलू?
तीन लीव्हर, आणि त्यातला एकच निर्णायक
प्रत्येक इमेज कॉम्प्रेसर तीन लीव्हरचं काही ना काही मिश्रण ओढत असतो: इमेजमध्ये किती पिक्सेल आहेत, एन्कोडरला किती तपशील टाकून द्यायची परवानगी आहे, आणि तो कोणत्या फॉरमॅटमध्ये लिहितो. लोक आधी क्वालिटी स्लायडरकडेच हात नेतात, कारण प्रत्येक टूल तोच सर्वात आधी दाखवतं. सुरुवात करण्यासाठी ती सहसा चुकीची जागा असते.
निर्णायक ठरतात ती परिमाणं, कारण फाइलचा आकार साधारणपणे पिक्सेलच्या संख्येबरोबर वाढतो आणि पिक्सेलची संख्या लांबी-रुंदीच्या वर्गाबरोबर वाढते. रुंदी आणि उंची निम्मी केली की पिक्सेल एक चतुर्थांश उरतात. क्वालिटी स्लायडरने तुम्ही करू शकाल असं काहीही एवढं निर्णायक नाही, आणि दिसणाऱ्या क्वालिटीच्या बाबतीत एवढी कमी किंमत दुसरं काहीही मोजत नाही — मात्र निकाल ज्या चौकटीत दाखवला जाणार आहे तिच्यापेक्षा तो मोठा राहील, या अटीवर.
तुम्हाला प्रत्यक्षात किती पिक्सेल लागतात ते ठरवा
आजचा फोन कॅमेरा साधारण 4000 पिक्सेल रुंदीच्या घरातल्या इमेज तयार करतो. लॅपटॉपवर पूर्ण स्क्रीनभर दिसणारा फोटो साधारण 1500 ते 2000 पिक्सेल रुंदीवर दाखवला जातो, आणि लेखाच्या आत असलेला फोटो बऱ्याचदा 800 वर. 800 दाखवणाऱ्या चौकटीत 4000 पिक्सेल पाठवणं म्हणजे डाउनलोड झाल्यानंतर पाहणाऱ्याच्या सॉफ्टवेअरकडून त्यातले सुमारे 96 टक्के पिक्सेल फेकून दिले जाणं.
| सर्वात लांब बाजू | अंदाजे पिक्सेल | 4000 px मूळ इमेजच्या तुलनेत वाटा |
|---|---|---|
| 4000 px | 10.7 दशलक्ष | 100% |
| 2560 px | 4.4 दशलक्ष | 41% |
| 1920 px | 2.5 दशलक्ष | 23% |
| 1280 px | 1.1 दशलक्ष | 10% |
| 800 px | 0.4 दशलक्ष | 4% |
ही टक्केवारी म्हणजे नुसतं गणित आहे, कोणत्याही ठराविक फाइलचं मोजमाप नव्हे — कॉम्प्रेस केलेली फाइल तिच्या पिक्सेल संख्येच्या अगदी त्याच प्रमाणात लहान होत नाही. तरीही आधी बघण्यासारखी हीच गोष्ट आहे, कारण तपशील टाकून द्यायला सुरुवात करण्याआधी आकार कमी केल्याने एन्कोडरला किती मोकळीक मिळते हे ती सांगते.
क्वालिटी स्लायडर नेमकं काय करतो
JPEG एन्कोडरमध्ये क्वालिटीचा आकडा प्रत्येक 8×8 ब्लॉकच्या फ्रिक्वेन्सी गुणकांवर लावल्या जाणाऱ्या भागाकारांच्या तक्त्याचं प्रमाण ठरवतो. कमी क्वालिटी म्हणजे अधिक ढोबळ भागाकार, म्हणजे अधिक गुणक शून्यावर येतात, म्हणजे कमी बिट्स. याची दिसणारी किंमत आधी तीक्ष्ण कडांभोवती आणि सपाट ग्रेडियंटमध्ये उमटते: मजकुराशेजारी रिंगिंग, आणि आकाशात बँडिंग.
हे मोजमाप रेषीय नाही, आणि वेगवेगळ्या फॉरमॅटमध्ये त्याची तुलनाही करता येत नाही. JPEG एन्कोडरमधली क्वालिटी 80, WebP एन्कोडरमधली 80 आणि AVIF एन्कोडरमधली 80 हे परस्परांशी संबंध नसलेले तीन आकडे आहेत, ज्यांची फक्त श्रेणी समान आहे. आकड्यावर विश्वास ठेवण्याऐवजी निकाल पूर्ण आकारात बघून त्याचा न्याय करा.
लक्ष्य आकार ही सेटिंग नसून शोध का असतो
“हे 500 KB चं कर” अशी सूचना कोणताही एन्कोडर स्वीकारत नाही. तो क्वालिटी सेटिंग स्वीकारतो आणि त्या ठराविक इमेजसाठी त्या सेटिंगमधून जो आकार निघेल तो देतो. त्यामुळे जे टूल तुम्हाला लक्ष्य आकार देऊ करतं, ते प्रत्यक्षात एक शोध चालवत असतं: एन्कोड करा, मोजा, क्वालिटी बदला, पुन्हा एन्कोड करा, आणि निकाल मर्यादेखाली आला की, किंवा क्वालिटीचा तळ गाठला की थांबा.
म्हणूनच लक्ष्य आकार हा नेहमीच सर्वतोपरी प्रयत्न असतो. तपशीलदार, नॉइज असलेला, उच्च रिझोल्यूशनचा फोटो माणसाला मान्य होईल अशा कोणत्याच क्वालिटीवर घट्ट मर्यादेत बसणार नाही, हे शक्य आहे; आणि चित्राची नासाडी होईपर्यंत रेटत राहण्यापेक्षा तळाशी थांबून तो कुठे थांबला हे सांगणं हा प्रामाणिक प्रतिसाद आहे. FileSlimmer ची लक्ष्य-आकाराची टूल्स आधी परिमाणं कमी करतात, मग ठरलेल्या सीमांच्या आत क्वालिटी अरुंद करत जातात, आणि शेवटी कोणत्या सेटिंगवर थांबले ते सांगतात.
चित्र 1 MB पेक्षा लहान कसं करायचं
सुरुवात अशी करा: फोनवरचा फोटो ज्या ठिकाणी पाठवायचा आहे तिथे जास्तीत जास्त जेवढी परिमाणं लागतात तेवढ्यावर आणा. ईमेल, फॉर्म आणि सर्वसाधारण वेब पेजसाठी ती कॅमेऱ्याच्या मूळ फोटोपेक्षा बरीच कमी असतात. मग उच्च — पण कमाल नव्हे — अशा क्वालिटीवर नवीन JPEG किंवा WebP एन्कोड करा, निकाल मोजा, आणि फाइल अजूनही 1 MB च्या वर असेल तरच क्वालिटी हळूहळू खाली आणा.
निकाल 1 MB खाली येईल की नाही हे एकट्या क्वालिटीवरून ठरत नाही, कारण तपशीलदार इमेजना साध्या इमेजपेक्षा जास्त डेटा लागतो. पहिल्या फेरीत मर्यादा हुकली, तर क्वालिटी जबरदस्तीने खाली आणण्याआधी परिमाणं कमी करा. प्रत्येक पिक्सेल टिकवून त्यावर ठळक ब्लॉक किंवा रिंगिंग आर्टिफॅक्ट चढवण्यापेक्षा यातून सहसा अधिक नैसर्गिक दिसणारी इमेज टिकते.
ज्यांचा काहीच उपयोग होत नाही
- फाइल ZIP मध्ये टाकणं. कॉम्प्रेस केलेल्या इमेज फॉरमॅटमध्ये सर्वसाधारण कॉम्प्रेसरला सापडेल अशी पुनरावृत्ती जवळपास शिल्लकच नसते; आर्काइव्हचा आकार सहसा मूळ आकाराच्या अगदी जवळच भरतो.
- एक्स्टेन्शन बदलणं. बाइट्स तसेच राहतात, आणि फाइलचं खरं सिग्नेचर वाचणारं सॉफ्टवेअर नुसतंच गोंधळून जातं.
- JPEG त्याच क्वालिटीवर पुन्हा सेव्ह करणं. ती दुसरी लॉसी फेरी असते: फाइल उपयोगी म्हणावी इतकी लहान होत नाही आणि चित्र मात्र थोडं बिघडतं.
- आकार कमी करणं हेच एकमेव उद्दिष्ट असेल तर फोटोमधून मेटाडेटा काढणं. कित्येक मेगाबाइट पिक्सेलसमोर काही किलोबाइटचा EXIF म्हणजे नगण्य. तो गोपनीयतेसाठी काढा — ती कारणं खरी आहेत — आकारासाठी नव्हे.
सहसा यश देणारी कार्यपद्धत
- ही इमेज कधीही जास्तीत जास्त ज्या आकारात दाखवली जाईल तो आकार ठरवा, आणि सर्वात लांब बाजू तेवढीच करा.
- आशयाला साजेसा फॉरमॅट निवडा: फोटोंसाठी लॉसी फॉरमॅट, स्क्रीनशॉट आणि सपाट ग्राफिक्ससाठी लॉसलेस.
- उच्च — पण कमाल नव्हे — अशा क्वालिटीपासून सुरुवात करा आणि नुकसान दिसू लागेपर्यंत एकेक पायरी खाली उतरा, मग एक पायरी वर या.
- निकाल पूर्ण आकारात, आणि तो ज्या प्रकारच्या स्क्रीनसाठी बनवला आहे तशाच स्क्रीनवर तपासा.
- तरीही तो फार मोठा असेल, तर पहिल्या पायरीवर परत जा. क्वालिटीपेक्षा परिमाणांमध्ये जास्त वाव जवळपास नेहमीच असतो.
हे कुठे काम करेनासं होतं
काही इमेज या सगळ्याला दाद देत नाहीत. बारीक मजकुराने भरलेल्या स्कॅन केलेल्या दस्तऐवजाला वाचनीय राहण्यासाठी त्याचे पिक्सेल हवेच असतात, त्यामुळे आकार कमी केल्याचा फटका लगेच बसतो आणि क्वालिटी कमी केल्याने नेमके तेच आर्टिफॅक्ट तयार होतात जे मजकूर वाचणं अवघड करतात. स्प्रेडशीटच्या स्क्रीनशॉटची अडचणही तीच. अशा वेळी योग्य उत्तर कमी किलोबाइट हे नसून बऱ्याचदा वेगळा फॉरमॅट असतो — लॉसलेस, किंवा PDF.
आणि एखाद्या पोर्टलने तुमची फाइल नाकारली, तर मर्यादा फाइलच्या आकारावर आहे की पिक्सेल परिमाणांवर ते तपासा. या दोन वेगळ्या मर्यादा आहेत, आणि एक ओलांडणारी फाइल दुसरीत नापास होऊ शकते.
यासाठीची टूल्स
स्रोत
- ITU-T T.81 — quantisation and the JPEG quality scale
- MDN — Image file type and format guide
- MDN — Responsive images and choosing a display width