डेटापासून पॅटर्नपर्यंत
QR कोड बनवण्याची सुरुवात डेटाला साजेसा एन्कोडिंग मोड निवडण्याने होते: न्यूमेरिक, अल्फान्यूमेरिक, बाइट किंवा कांजी. एन्कोडर डेटाचे बिट्समध्ये रूपांतर करतो, त्यांचे 8-बिट कोडवर्डमध्ये विभाजन करतो आणि निवडलेल्या लेव्हलनुसार रीड–सोलोमन एरर करेक्शन कोडवर्ड जोडतो. मग तो बसणारी सर्वात लहान आवृत्ती निवडतो.
कोडवर्ड जाळीत नागमोडी मार्गाने मांडले जातात, जो ठरावीक पॅटर्न वगळतो. शेवटी एन्कोडर मोठे रिकामे भाग किंवा गोंधळात टाकणारे आकार मोडण्यासाठी आठपैकी एक मास्क पॅटर्न लावतो, आणि मास्क व एरर करेक्शन लेव्हल फॉरमॅट माहितीत नोंदवतो.
- एन्कोडिंग मोड निवडा
- डेटा एन्कोड करा आणि एरर करेक्शन कोडवर्ड जोडा
- आवृत्ती (आकार) निवडा
- फाइंडर, टायमिंग आणि अलाइनमेंट पॅटर्न ठेवा
- डेटा मॉड्यूल भरा
- आठपैकी सर्वोत्तम मास्क लावा आणि फॉरमॅट माहिती लिहा
कॅमेरा इमेजपासून डेटापर्यंत
डिकोडिंग याच पायऱ्या उलट क्रमाने करते. स्कॅनर तीन फाइंडर पॅटर्न शोधतो, ज्यांचे गडद आणि फिकटाचे 1:1:3:1:1 गुणोत्तर बहुतेक इमेजमध्ये उठून दिसते, आणि ते टायमिंग व अलाइनमेंट पॅटर्नसह वापरून जाळीचा नकाशा बनवतो. तो फॉरमॅट माहिती वाचतो, मास्क काढतो आणि कोडवर्ड गोळा करतो.
मग रीड–सोलोमन डिकोडिंग चुकीचे वाचले गेलेले कोडवर्ड एरर करेक्शन लेव्हलच्या मर्यादेपर्यंत दुरुस्त करते. जास्त भाग खराब असेल, तर कोड चुकीचा डेटा देण्याऐवजी वाचला जातच नाही, म्हणूनच QR कोड क्वचितच गडबडलेला निकाल देतात.
आकार आणि कॉन्ट्रास्ट का महत्त्वाचे
प्रत्येक पायरी कॅमेरा गडद आणि फिकट मॉड्यूल वेगळे ओळखू शकण्यावर अवलंबून असते. लहान मॉड्यूल, कमी कॉन्ट्रास्ट, चकाकी, धूसरपणा किंवा क्वाएट झोन नसणे या सगळ्यामुळे जास्त मॉड्यूल संशयात येतात, आणि एरर करेक्शन एका मर्यादेपर्यंतच भार सोसू शकते. डेटा छोटा, कॉन्ट्रास्ट मजबूत आणि किनार मोकळी ठेवली, तर डिकोडरचे काम सर्वात सोपे होते.