QR एरर करेक्शन कोड में पहले से बनी अतिरिक्त जानकारी (रिडंडेंसी) है, जिससे QR कोड गंदा, ख़राब या आंशिक रूप से ढका होने पर भी स्कैन हो जाता है। इसके चार लेवल हैं: L लगभग 7% डेटा वापस ला सकता है, M लगभग 15%, Q लगभग 25% और H लगभग 30%। ऊँचे लेवल ज़्यादा मज़बूत हैं, लेकिन कोड को घना बना देते हैं।
QR एरर करेक्शन कैसे काम करता है
QR कोड आपके टेक्स्ट को सिर्फ़ एक बार स्टोर करके किस्मत के भरोसे नहीं छोड़ता। कोड बनाते समय डेटा को बाइट के ब्लॉक में बाँटा जाता है, जिन्हें कोडवर्ड कहते हैं, और उनसे अतिरिक्त एरर-करेक्शन कोडवर्ड गणना करके जोड़े जाते हैं। इसके लिए रीड-सोलोमन (Reed–Solomon) एरर करेक्शन नाम की गणितीय विधि इस्तेमाल होती है, उसी परिवार की तकनीक जो दशकों से CD, DVD और डेटा ट्रांसमिशन में इस्तेमाल हो रही है।
जब फ़ोन कोड स्कैन करता है, तो वह सभी कोडवर्ड पढ़ता है। अगर खरोंच, दाग़ या ऊपर रखे लोगो की वजह से कुछ कोडवर्ड पढ़े नहीं जा सकते या ग़लत हैं, तो स्कैनर अतिरिक्त कोडवर्ड से अंदाज़ा लगाता है कि ग़ायब हिस्से क्या रहे होंगे। जब तक नुक़सान उस लेवल की सीमा के अंदर है, स्कैन कामयाब होता है और आपको पता भी नहीं चलता कि कुछ गड़बड़ थी।
एरर करेक्शन लेवल कोड के एक छोटे हिस्से में दर्ज होता है जिसे फ़ॉर्मेट इन्फ़ॉर्मेशन कहते हैं, और यह दो बार स्टोर होता है ताकि स्कैनर इसे भरोसे से पढ़ सके।
चार लेवल: L, M, Q और H
हर लेवल स्टोरेज की जगह के बदले मज़बूती देता है। नीचे दिए प्रतिशत कोड के उस डेटा का अनुमानित हिस्सा हैं जो वापस लाया जा सकता है।
- लेवल L (Low), लगभग 7%। सबसे छोटे कोड में सबसे ज़्यादा डेटा। साफ़, इनडोर, स्क्रीन पर दिखने वाले इस्तेमाल के लिए अच्छा, जहाँ नुक़सान की संभावना कम है।
- लेवल M (Medium), लगभग 15%। संतुलित, आम डिफ़ॉल्ट। पर्चे, मेन्यू और विज़िटिंग कार्ड जैसी ज़्यादातर छपी सामग्री के लिए सही।
- लेवल Q (Quartile), लगभग 25%। ऐसे कोड के लिए अतिरिक्त सुरक्षा जो गंदे या घिस सकते हैं, जैसे पैकेजिंग, लेबल या वर्कशॉप में।
- लेवल H (High), लगभग 30%। सबसे ज़्यादा मज़बूती। अक्सर बाहर के बोर्ड, कठिन माहौल, या बीच में लोगो वाले कोड के लिए चुना जाता है।
ये आँकड़े वापस लाए जा सकने वाले डेटा के बारे में हैं, इसका मतलब यह नहीं कि "आप तस्वीर का 30% ढक सकते हैं"। ग़लत जगह पर नुक़सान, ख़ासकर तीन बड़े कोने वाले चौकोरों पर, कोड को स्कैन होने से रोक सकता है, भले ही कुल प्रभावित हिस्सा छोटा हो।
संतुलन: मज़बूती बनाम घनता
एरर करेक्शन मुफ़्त नहीं आता। अतिरिक्त कोडवर्ड कोड के अंदर जगह लेते हैं। उसी कंटेंट के लिए ऊँचे लेवल का मतलब है:
- ज़्यादा मॉड्यूल, यानी छोटे काले और सफ़ेद चौकोर
- बड़ा QR "वर्ज़न", जो वर्ज़न 1 में 21 × 21 मॉड्यूल से लेकर वर्ज़न 40 में 177 × 177 तक होता है
- उसी भौतिक साइज़ में छापने पर हर चौकोर छोटा
छोटे चौकोर कैमरे के लिए अलग पहचानना मुश्किल होते हैं, ख़ासकर दूर से, कम रोशनी में या पुराने फ़ोन पर। इसलिए किसी छोटे लेबल पर लंबे वेब एड्रेस के लिए लेवल H चुनना कोड को ज़्यादा भरोसेमंद नहीं, बल्कि कम भरोसेमंद बना सकता है।
हल आमतौर पर डेटा घटाना है। छोटा लिंक, जैसे QR-TH डायनामिक कोड में इस्तेमाल होने वाले qr-th.com/r/ लिंक, कंटेंट को छोटा रखता है। इससे कोड को बहुत घना किए बिना ऊँचे एरर करेक्शन लेवल की जगह बच जाती है। हमारी गाइड स्टैटिक बनाम डायनामिक QR कोड बताती है कि छोटे लिंक कैसे काम करते हैं।
कौन-सा लेवल चुनें?
यह आसान गाइड अपनाएँ:
- स्क्रीन पर दिखेगा या साफ़ इनडोर प्रिंट है? लेवल L या M काफ़ी है।
- सामान्य छपी मार्केटिंग, जैसे मेन्यू, पर्चे या पोस्टर? लेवल M भरोसेमंद डिफ़ॉल्ट है।
- घिसने, भीगने, गंदा होने या आंशिक रूप से ढकने की संभावना है? Q चुनें।
- बीच में लोगो, बाहर का बोर्ड या कठिन माहौल? H चुनें, और डेटा छोटा रखें।
- जो भी चुनें, छपे कोड को टेस्ट करें, कई फ़ोन पर, असली दूरी और रोशनी में।
कई QR जनरेटर अपने आप समझदारी वाला लेवल चुन लेते हैं, और लोगो जोड़ने पर अक्सर उसे बढ़ा देते हैं। अगर आपका टूल चुनने देता है, तो हमेशा सबसे ऊँचा लेवल चुनने की जगह यह सोचें कि कोड कहाँ लगेगा।
एरर करेक्शन और लोगो
QR कोड के बीच में लोगो रखना एरर करेक्शन की वजह से काम करता है: लोगो कुछ मॉड्यूल छिपा देता है, और स्कैनर उन्हें अतिरिक्त डेटा से दोबारा बना लेता है। कुछ नियम इसे भरोसेमंद रखते हैं:
- लोगो जोड़ते समय लेवल H, या कम से कम Q, इस्तेमाल करें।
- लोगो ठीक-ठाक छोटा और बीच में रखें। अधिकतम रिकवरी लेवल से काफ़ी नीचे रहें, क्योंकि असल दुनिया का नुक़सान, चमक और धुंधलापन भी एरर की गुंजाइश खा जाते हैं।
- कोनों के तीन बड़े फ़ाइंडर चौकोर या कोड के चारों ओर का क्वाइट ज़ोन कभी न ढकें।
- कोड और बैकग्राउंड के बीच मज़बूत कंट्रास्ट रखें।
डिज़ाइन से जुड़ी और सलाह के लिए हमारा लेख QR कोड डिज़ाइन के बेस्ट प्रैक्टिस पढ़ें।
एरर करेक्शन क्या ठीक नहीं कर सकता
एरर करेक्शन ताक़तवर है, लेकिन इसकी सीमाएँ हैं। यह ऐसे कोड को नहीं बचा सकता जिसमें:
- कम कंट्रास्ट हो, जैसे सफ़ेद पर हल्का ग्रे या गहरे पर गहरा
- क्वाइट ज़ोन न हो, क्योंकि कोड दूसरे ग्राफ़िक्स से बिल्कुल सटाकर छपा है
- कोनों के फ़ाइंडर पैटर्न ख़राब हों
- चौकोर स्कैनिंग दूरी के हिसाब से बहुत छोटे हों
- बहुत ज़्यादा विकृति हो, जैसे बहुत घुमावदार सतह पर
- चमकदार लेमिनेशन की रिफ़्लेक्शन बड़े हिस्से को धो दे
एरर करेक्शन कोड को ज़्यादा सुरक्षित भी नहीं बनाता। लेवल H वाला QR कोड भी किसी ख़तरनाक वेबसाइट पर ले जा सकता है, और असली कोड पर चिपका स्कैम स्टिकर बिल्कुल ठीक स्कैन होगा। किसी कोड पर शक हो, तो कुछ भी खुलने से पहले डेस्टिनेशन देखने के लिए QR-TH से ऑनलाइन QR कोड स्कैन करें।
FAQ
सबसे अच्छा QR एरर करेक्शन लेवल कौन-सा है?
कोई एक सबसे अच्छा लेवल नहीं है। ज़्यादातर छपे इस्तेमाल के लिए M अच्छा डिफ़ॉल्ट है, जबकि लोगो और बाहर या कठिन माहौल के लिए H सही है। कोड कहाँ इस्तेमाल होगा, उसके हिसाब से चुनें।
क्या ऊँचा एरर करेक्शन लेवल QR कोड को बड़ा बना देता है?
उसी डेटा के लिए, हाँ। इससे मॉड्यूल बढ़ते हैं, इसलिए या तो छपा कोड बड़ा होता है या हर चौकोर छोटा।
क्या मैं किसी भी QR कोड पर लोगो लगा सकता हूँ?
तभी, जब छिपे हिस्से को संभालने लायक एरर करेक्शन हो, इसलिए Q या H इस्तेमाल करें। लोगो छोटा और कोने के चौकोरों से दूर रखें, और छापने से पहले हमेशा टेस्ट करें।
क्या छपने के बाद एरर करेक्शन लेवल बदल सकते हैं?
नहीं। लेवल छपे पैटर्न का हिस्सा है। इसे बदलने के लिए नया कोड बनाकर छापना होगा।
असल दुनिया में भी पढ़ने लायक रहने वाला कोड चाहिए? QR-TH के फ़्री QR कोड जनरेटर से बनाएँ, कंटेंट छोटा रखें, और छापने से पहले दो-तीन फ़ोन पर टेस्ट कर लें।