छवियाँ और तस्वीरें · छवि कन्वर्टर और कंप्रेसर
JPEG पीढ़ी हानि: जब आप उसी फ़ोटो को दोबारा सहेजते हैं तो क्या होता है
· यह काम किस प्रकार करता है
छवि-प्रारूप JPEG छवि के गुणवत्ता
प्रत्येक हानिपूर्ण सेव जानकारी को त्याग देता है, और डिस्कार्ड जमा हो जाता है: दस बार सेव किया गया फोटो एक ही गुणवत्ता में एक बार सेव किए गए फोटो के समान नहीं होता है। यह पोस्ट बताती है कि क्यों, क्या चीज़ इसे बदतर बनाती है, और वर्कफ़्लो की संरचना कैसे करें ताकि यह एक बार हो।
वह छवि जो हर हफ्ते धुंधली होती गई - धीमी गति से गिरावट पर किसी ने तब तक ध्यान नहीं दिया जब तक कि उन्होंने पहले और नवीनतम संस्करणों की तुलना नहीं की
जब प्रत्येक नया संस्करण पिछले सप्ताह के JPEG से शुरू होता है तो एक साप्ताहिक अभियान छवि सुस्त और शोर भरी हो सकती है। परिवर्तन नोटिस से बच सकता है क्योंकि कोई भी पीढ़ी आठवीं के अलावा पहली पीढ़ी को नहीं देखता है। ToolAcre का प्रारूप तर्क उस तंत्र को नाम देता है जिसे वह साबित कर सकता है: JPEG हर गुणवत्ता में हानिपूर्ण है, और JPEG को फिर से एन्कोड करने से पहले के अलावा हानि का एक और दौर जुड़ जाता है।
एक स्लाइडर मान पर बहस करने से पहले वर्कफ़्लो का ऑडिट करें। सबसे पहले बनाए गए स्रोत का पता लगाएं और प्रत्येक ऑपरेशन को सूचीबद्ध करें जिसने एक और JPEG लिखा था। डाउनलोड, नाम बदलने या कॉपी करने से कोई पीढ़ी हानि नहीं होती; डिकोड के बाद एन्कोड होता है। यह अंतर अक्सर फसल, आकार, अनुमोदन और अंतिम वितरण के बीच एक अनावश्यक निर्यात को प्रकट करता है।
हानिपूर्ण क्यों हानिपूर्ण है - परिमाणीकरण आवृत्ति गुणांक को पूर्णांकित करता है, और पूर्णांकन को डिकोडिंग द्वारा पूर्ववत नहीं किया जा सकता है
योजना की आवृत्ति-गुणांक व्याख्या प्रशंसनीय पेजभूमि सामग्री है, लेकिन वे गणनाएँ इस एप्लिकेशन में मौजूद नहीं हैं। ब्राउज़र के पास JPEG एनकोडर है। ToolAcre इसे कैनवास पिक्सेल, एक MIME प्रकार और गुणवत्ता पास करता है, फिर एक ब्लॉब प्राप्त करता है। इसलिए भरोसेमंद दावा व्यावहारिक है: विवरण को छोड़ दिया जाता है, और छोड़ी गई जानकारी को बाद में PNG चुनकर पुनर्स्थापित नहीं किया जा सकता है।
साक्ष्य सीमा को संकीर्ण रखने से सिफ़ारिश कमज़ोर नहीं होती। हानिपूर्ण अवस्था केवल वहीं होनी चाहिए जहां हानिपूर्ण डिलीवरी फ़ाइल की आवश्यकता होती है। यदि टूलों के बीच एक मध्यवर्ती को बचाया जाना चाहिए, तो मूल परियोजना या जहां व्यावहारिक हो, एक दोषरहित रेखापुंज को बनाए रखें। अगला निर्यात उन पिक्सेल से शुरू हो सकता है जो पहले से ही टालने योग्य JPEG सन्निकटन से बच नहीं पाए हैं।
रिपोजिटरी हानिपूर्ण ब्राउज़र एन्कोडिंग का सत्यापन करता है, न कि JPEG गुणांक गणित का
दूसरी बार सहेजने पर, डिकोडर पहले JPEG से पिक्सेल उत्पन्न करता है और एनकोडर उन पिक्सेल का फिर से अनुमान लगाता है। नए पास की पूर्व-JPEG स्रोत तक कोई पहुंच नहीं है और यह पहले से पेश की गई कलाकृतियों से मूल विवरण को अलग नहीं कर सकता है। ToolAcre की चेतावनी यह सुझाव देने के बजाय स्पष्ट रूप से इसे दूसरा दौर कहती है कि समान प्रारूप और गुणवत्ता बाइट्स को अछूता छोड़ देती है।
एक उपयोगी प्रयोग एक फ़ाइल नाम को अधिलेखित करने के बजाय हर पीढ़ी को बनाए रखता है। एक मास्टर से शुरू करें, `round-1.jpg` बनाएं, उस परिणाम को `round-2.jpg` के लिए लोड करें और जारी रखें। प्रत्येक की तुलना गुरु और उसके निकटतम माता-पिता से करें। अलग-अलग फ़ाइलें क्रमिक परिवर्तन को दृश्यमान बनाती हैं और परीक्षण को उसके संदर्भ को नष्ट करने से रोकती हैं।
दूसरा सेव डिकोड किए गए पिक्सेल से दूसरा ब्राउज़र एन्कोड है
सेव के बीच क्रॉप करना या आकार बदलना एक अतिरिक्त पिक्सेल ऑपरेशन का परिचय देता है। इस कोड में, परिवर्तित आयाम योजना को पुनः नमूना के रूप में चिह्नित करते हैं, भले ही गंतव्य एनकोडर PNG हो। `drawImage` एन्कोडिंग से पहले उच्च स्मूथिंग के साथ चयनित स्रोत आयत को लक्ष्य ज्यामिति में फिर से बनाता है, इसलिए आयाम परिवर्तन को JPEG के हानिपूर्ण लेखन से अलग से दर्ज किया जाना चाहिए।
रूपरेखा शिफ्ट किए गए ब्लॉक ग्रिड को अतिरिक्त क्षति पहुंचाती है, लेकिन यह ब्राउज़र पाइपलाइन ब्लॉक संरेखण को उजागर नहीं करती है। बचाव योग्य प्रक्रिया चर को अलग करना है: पहले समान आकार के JPEG निर्यात को दोहराएं, फिर आकार बदलने के साथ दोहराएं। यदि दूसरा अनुक्रम अधिक बदलता है, तो एन्कोडर-स्तरीय स्पष्टीकरण का आविष्कार किए बिना अवलोकन उस ब्राउज़र और परीक्षण छवि से संबंधित होता है।
आकार बदलने से पुन: नमूनाकरण जुड़ जाता है; ब्लॉक-ग्रिड स्पष्टीकरण कार्यान्वयन के बाहर के साक्ष्य हैं
प्रत्येक राउंड में समान गुणवत्ता संख्या का उपयोग करने से सुरक्षित बंदरगाह नहीं बनता है। मान वर्तमान ब्राउज़र के एनकोडर को एक निर्देश के रूप में पारित किया जाता है; यह कोई चेकसम, रिटेन-डिटेल प्रतिशत या वादा नहीं है कि कोई अन्य एनकोडर संख्या को समान रूप से मैप करता है। स्रोत रिकॉर्ड यह भी चेतावनी देते हैं कि ब्राउज़र और प्लेटफ़ॉर्म के बीच आउटपुट थोड़ा भिन्न हो सकते हैं।
गुणवत्ता 100 को अभी भी JPEG के लिए हानिकारक के रूप में वर्गीकृत किया गया है। बाद की पीढ़ी पर संख्या बढ़ाने से बाइट्स जुड़ सकते हैं, लेकिन यह पहले हटाई गई बनावट को नहीं बुला सकता है। पहली पीढ़ी की डिलीवरी कॉपी और उसके मापे गए आकार का निरीक्षण करके गुणवत्ता चुनें। एक बार स्वीकृत होने के बाद, स्वीकृत निर्यात को अगले स्रोत के रूप में उपयोग करने के बजाय जब भी सामग्री बदलती है तो मास्टर से उस प्रतिलिपि को पुन: उत्पन्न करें।
गुणवत्ता संख्याएं एनकोडर इनपुट हैं, समतुल्य परिमाणीकरण की गारंटी नहीं
पांच दौर के प्रदर्शन के लिए, एक तस्वीर का चयन करें जिसमें चिकना आकाश, बाल, पत्ते और उच्च-विपरीत किनारे हों। आयाम निश्चित रखें और एक ब्राउज़र और एक गुणवत्ता का उपयोग करें। प्रत्येक राउंड को क्रमांकित फ़ाइल नाम के साथ सहेजें, फिर एक व्यूअर में 100 प्रतिशत पर सभी छह फ़ाइलों की तुलना करें जो अतिरिक्त संपादन लागू नहीं करता है।
पूर्वनिर्धारित वृद्धि या कमी का दावा करने के बजाय आउटपुट बाइट्स रिकॉर्ड करें। बाद का दौर पिक्सेल और एनकोडर के आधार पर छोटा या बड़ा हो सकता है; आकार दिशा गुणवत्ता स्कोर नहीं है. विस्तृत सीमाओं और चिकने क्षेत्रों के आसपास परिवर्तनों को देखें, और मूल को अभी भी बरकरार रखते हुए प्रयोग बंद कर दें।
इसमें क्या शामिल नहीं है - दोषरहित प्रारूप, जो इससे प्रभावित नहीं होते हैं, और RAW या मास्टर फ़ाइलों का संपादन
दोषरहित गंतव्य एन्कोडिंग अलग तरह से व्यवहार करती है, लेकिन एक ख़राब JPEG को PNG में परिवर्तित करने से केवल ख़राब हुए डीकोडेड पिक्सेल ही सटीक रूप से संग्रहीत होते हैं। यह पिछले नुकसान की भरपाई नहीं करता है. RAW विकास, स्तरित परियोजनाएं और कैमरा-विशिष्ट मास्टर वर्कफ़्लो इस ब्राउज़र कन्वर्टर के बाहर हैं, जो JPEG, PNG, WebP और एकल-फ़्रेम GIF इनपुट स्वीकार करता है।
यह टूल स्वचालित रूप से पीढ़ियों की तुलना नहीं करता है या अवधारणात्मक स्कोर की गणना नहीं करता है। इसका पहला-परिणाम पहले और बाद के पैन दृश्य समीक्षा का समर्थन करते हैं, जबकि डाउनलोड की गई फ़ाइलें एक सख्त मूल-आकार की तुलना की अनुमति देती हैं। उन सुविधाओं को निरीक्षण सहायता के रूप में मानें, न कि प्रमाणीकरण के रूप में कि चुनी गई सेटिंग अभिलेखीय है।
टेकअवे: एक मास्टर रखें, एक बार निर्यात करें - छवि कन्वर्टर और कंप्रेसर को बार-बार के बजाय अंतिम चरण के रूप में कैसे उपयोग करें
सत्य का एक स्रोत रखें और हानिपूर्ण फ़ाइल को प्रतिस्थापन योग्य व्युत्पन्न बनाएं। वह सरल स्वामित्व नियम एक सामाजिक कैलेंडर को सन्निकटन की श्रृंखला बनने से रोकता है। ToolAcre किसी विशिष्ट प्राप्तकर्ता या चैनल के लिए अंतिम एन्कोड होना चाहिए, न कि हर छोटे संपादन के बाद दोहराया जाने वाला अदृश्य मध्यवर्ती।
जब एक नए संस्करण की आवश्यकता हो, तो मास्टर को फिर से खोलें, सभी आवश्यक ज्यामिति एक बार लागू करें और एक बार निर्यात करें। क्षतिग्रस्त वंशावली के बजाय सेटिंग्स या अनुमोदन नोट को संग्रहीत करें। ब्राउज़र हमेशा एक और डिलीवरी बना सकता है JPEG; यह उस जानकारी का पुनर्निर्माण नहीं कर सकता जिसे पिछली पीढ़ियों ने फेंक दिया था।