Patiko straipsnis?

QR kodas

QR kodas? Kas tai?

QR kodas (Quick Response) – dvimačio brūkšninio kodo rūšis (angl. 2D matrix barcode), pastaruoju metu itin sparčiai plintanti įvariausiose informacijos pateikimo bei perdavimo srityse. QR kodo šaknys – automobilų pramonėje, o tiksliau – šį kodą sukūrė japonų kompanija “Denso Wave” (dukterinė Toyota kompanija) kaip tobulesnį pakaitalą dvimačiam brūkšniniam kodui, dar žinomam kaip UPC. Pagrindinė inovacijos savybė palyginus su UPC – į mažesnį plotą sutalpinamas gerokai didesnis informacijos kiekis, neprarandant kodo nuskaitymo spartos bei suteikiant galimybę klaidų kontrolei, o pirminė panaudojimo paskirtis buvo automobilinių dalių identifikavimas gamybos procese. Kodų raida.Nors sukurtas ir Denso pradėtas naudoti dar 1994 metais, Japonijos Industrijos Asociacijos patvirtintas ir pradėtas naudoti 1997-aisiais, o 1999 metais paskelbtas žymėjimo standartu Japonijos industrinėje pramonėje, pirmuosius žingsnius į platųjį vartotojų ratą žengia dar tik keletą metų, kai 2006-aisiais buvo paskelbtas ISO standartu (ISO/IEC18004:2006).

Didžiausias katalizatorius plintant QR kodui ne komerciniame ar industriniame sektoriuje, o tarp įprastų vartotojų – milžiniškais tempais populiarėjantys išmanieji telefonai, leidžiantys bet kuriam jų savininkui, pasinaudojant telefone įmontuota kamera bei papildoma programėle (kai kurie telefonai ją turi ir standartiškai), akimirksniu nuskaityti QR kode saugomą informaciją.

Praktinis panaudojimas

O kuo gi mums gali būti naudingas QR kodas? Visų pirma tai būdas itin sparčiai, patikimai ir patogiai perduoti informaciją išmaniojo telefono savininkui, kurios tolimesnį panaudojimą jau sąlygoja informacijos pobūdis. Standartiškai QR skirtas saugoti skaitinius, tekstinius arba mišrius duomenis (vardan išbaigtumo – taip pat ir Kanji/Kana, t.y. Japoniškus rašmenis), tačiau tolimesnį jų interpretavimą riboja tik fantazija. Vieni populiaresnių duomenų formatų: URL nuorodos (taip pat ir URI/URN), vCard formato kontaktų kortelės, vCalendar formato kalendoriaus įrašai, SMS bei MMS žinutės, el. pašto laiškai, PayPal greitasis apmokėjimas ir t.t.

Keletas populiaresnių QR nuskaitymo programų skirtų išmaniesiems telefonams:

Licencija

QR kodo naudojimas nėra varžomas jokios licencijos, bei jo naudojimas yra aiškiai apibrėžtas ir aprašyas kaip ISO standartas.

Frazė “QR Code” yra registruota kaip “Denso Wave Inc.” prekybinis ženklas.

Taip pat “Denso Wave” priklauso ir QR kodų patento teisės, tačiau pati kompanija yra pasirinkusi ir nusprendusi patento apsaugos nevykdyti.

QR kodo anatomija

Kodo talpa

Įprastas UPC brūkšninis kodas talpina daugiausiai 30 simbolių, šiuo atveju QR galimybės – dešimtis ar net šimtus kartų didesnės:

  • 7089 simboliai skaitiniams duomenims;
  • 4296 simboliai mišriems skaitiniams/raidiniams duomenims (0–9, A–Z, tarpas, $, %, *, +, -, ., /, :);
  • 2953 Base256 (8 bitų) simboliai;
  • 1817 Kanji/Kana simbolių.

Maksimalią kodo talpą lemia jo versija, kuri žymima skaičiumi nuo 1 iki 40. Pirmosios versijos kodo matmenys – 21×21 elementų, o versijos padidinimas vienetu yra lygus elementų padaugėjimui keturiais vienetais abiejomis kryptimis, t.y. 1 versija – 21×21, 2 versija – 25×25, 3 versija – 29×29, … , ir taip iki paskutiniosios, 40 versijos su 177×177 elementų.

Klaidų korekcija

Taip pat maksimali kodo talpa priklauso ir nuo pasirinkto klaidų korekcijos lygio (L, M, Q, H – atitinkamai Low, Medium, Quality, High). Nuo pasirinkimo priklauso kokį procentą prarastų kodinių žodžių galima atstatyti (vienas kodinis žodis – 8 bitai):

  • L – leidžia atstatyti 7%;
  • M – leidžia atstatyti 15%;
  • Q – leidžia atstatyti 25%;
  • H – leidžia atstatyti 30%.

Klaidų korekcijai naudojamas Reed-Solomon kodas, jį pridedant prie orginalių duomenų. Korekcijos lygį atitinkantis procentas atitinka papildomai pridedamų duomenų procentą. Pvz. jei koduojame 200 simbolių ir norime turėti galimybę 50 iš jų atstatyti praradimo atveju, kas sudaro 25% (Q lygis), turime pridėti papildomus 25% Reed-Solomon kodo duomenų, t.y. galutinis rezultatas bus 250 koduojamų simbolių.

Kodo skanavimo aplinkybės

Dėl struktūros specifikos ir pagalbinių elementų QR kodas yra labai atsparus įvairiems iškraipymams ir skaitymo kampo nepastovumui. Plokštuma, ant kurios yra kodas, gali būti pasukta bet kokiu 360° kampu, nes pastarąjį skaitytuvas nustato pagal trijuose kampuose esančius nekintančius elementus (angl. finder pattern), kurių juodos-baltos spalvų santykis, nepriklausomai nuo žiūrėjimo kampo yra 1:1:3:1:1, kas padeda juos lengvai identifikuoti. Taip visus tris kampinius elementus jungia elementų eilė, angliškai vadinamų timing pattern, kuri yra skirta kodo bloko centrinės koordinatės nustatymui. Taip pat gali būti naudojamas (tačiau neprivalomas) elementas alignment pattern, kuris padeda atlikti įvairių netiesinių iškraipymų korekcijas, pvz. kodo išgaubimą, įdubimą, ar perspektyvinius iškraipymus.

QR kodo išskaidymas

Dar viena įdomi QR kodo savybė – galimybė vieną didesnį kodą išskaidyti į keletą mažesnių (iki 16). Praktiškai tokia savybė gali būti panaudota, kai kodo spausdinimui skirtas plotas dėl kokių nors aplinkybių yra stipriai apribotas vienu ar kitu matmeniu. Pačiame kode yra įrašomas skaidymą indokuojantis parametras, kuri sutikęs skaitytuvas automatiškai apjungia keletą nuskaitytų kodų į vieną.

Informacijos kodavimas

QR kodo struktūra. Skanuojant QR kodą visų pirma nustatoma formato informacija: klaidų korekcijos lygis bei kaukės šablonas. Formato informacija yra dubliuota, t.y. QR kode saugomos dvi jos kopijos, taip pat ji saugoma nuo klaidų BCH (Bose, Ray-Chaudhuri, Hocquenghem) kodu. Egzistuoja 8 skirtingi kaukių šablonai, 6×6 elementų dydžio. Šablonu yra uždengiamas visas kodas (išskyrus formato informaciją ir pozicionavimo elementus), o kodo elementai sutampantys su juodais kaukės elementais – invertuojami. Duomenų struktūros apėjimas. Kodas apeinamas pradedant nuo apatinio dešiniojo kampo, zigzago tvarka, pradedant eiti į viršų. Taip pat apėjimo būdas labai primena ir gyvatėlę – kaip kam patogiau įsivaizduoti. Bitų tvarka apeinant: pirmasis – svarbiausias, paskutinis – mažiausiai svarbus, kitaip tariant MSb-to-LSb/right-to-left, dviejų elementų pločio, atsižvelgiant į apėjimo tvarką.

QR kodo duomenų struktūra. Pirmieji keturi bitai (0-3) – kodavimo informacija (skaitinis, mišrus,dvejetainis, Kanji/Kana ir t.t.), tolimesni aštuoni bitai (4-11) nurodo koduojamos žinutės ilgį.  Visa tolimesnė informacija žingsniuojant po 8 bitus eilės tvarka: užkoduota žinutė, keturių bitų žinutės pabaigos simbolis, bei klaidų korekcijos informacija pabaigoje.

Kaukės šablonų taikymas. Jei pirmieji keturi bitai indikuoja skaitinį kodavimą, tuomet į 10 bitų sutalpinami 3 skaitmenys. Naudojant mišrų (angl. alphanumeric) kodavimą – į 11 bitų telpa 2 simboliai, tačiau šio kodavimo atveju nėra išsaugomas didžiosios/mažosios raidės požymis.Kaukės šablonų variantai. Norint naudoti platesnį simbolių rinkinį, naudojamas Base256 kodavimas (angl. byte encoding) kurio atveju vienas simbolis užima 8 bitus. Taip pat yra ir daugiau kodavimo variantų, tačiau tiek nebeišsiplėsime, o norintys žinoti daugiau gali susipažinti su įrašo apačioje esančiomis nuorodomis.

Informacijos šifravimas

Nors kolkas QR kodų šifravimas nėra populiarus, tačiau natūralu, kad populiarėjant pačiam kodui ir daugėjant jo panaudojimo paskirčių, atsiranda ir poreikis juo perduoti užslaptintas žinutes. Taip pat jau galimą parsisiųsti Android operacinę sistema turintiems telefonams pritaikyta programėlę QR Droid, su kurios pagalba galėsite sukurti šifruotą pranešimą. Kitas asmuo, norėdamas perskaityti pranešimą, turės jį nuskaityti ir atkoduoti su ta paiča programa, kuri po nuskaitymo paprašo įvesti slaptažodį, kuris veikia kaip šifro raktas.

Micro QR

MicroQR kodasTaip pat egzistuoja ir QR kodo tiesioginis palikuonis – Micro QR kodas, kuris skirtingai nuo įprastų trijų pozicijos detektavimo elementų, turi tik vieną. Taip pat Micro QR reikalinga tik dviejų struktūrinių elementų dydžio paraštė, skirtingai nei dvigubai didesnė reikalaujama QR kodo. Na ir be abejo talpa – mažasas giminaitis turi maksimalią 35 skaitinių simbolių talpą, o dėl struktūrinių skirtumų tai leidžia spausdinimą itin mažame plote.

Egzistuoja keturios Micro QR versijos – M1, M2, M3, M4. Nuo pirmosios iki paskutinės atitinkamai kinta modulių skaičius – nuo 11×11 iki 17×17, atitinkamai saugoma nuo 5 iki 35 skaitinių simbolių, priklausomai nuo pasirinkto klaidų korekcijos lygio.

Verta pastebėti, kad Micro QR kodui galioja visos minėtos naudojimo, licencijavimo bei patentavimo sąlygos, kaip ir anksčiau aprašyta įprastam QR kodui.

QR kodas kaip meninės išraiškos priemonė

Dekoruotas QR kodas.Pradėjęs sparčiai populiartėti, QR kodas nepraslydo ir pro smalsų grafikų, dizainerių ir šiaip visokio plauko meninkų ar tiesiog kūrybingų žmonių žvilgsnį. Vieni tiesiog kuria estetiškai patrauklius kūrinius pasiskolinančius QR kodo struktūrą, tačiau nebeatliekančius jo funkcijos, tačiau kai kurie patį kodą dekoruoja taip, kad jis kartais net sunkiai atpažįstamai pakeisdamas savo išvaizdą, išlieka funkcionalus! Kodel? O gi dėl jau minėtos galimos 30% duomenų praradimo korekcijos.
Louis Vuitton - by Takashi Murakami
Vieni pirmųjų plačiau eksploatavusių šią galimybę ir sulaukę nemažai atgarsių IT ir Interneto platybėse – BBC. Jie į savo  kodo vidurį iterpė nedidelį BBC ženkliuką, sugebėdami išsaugoti kodą puikiausiai nuskaitomu. Po tokių eksperimentų, QR “menas” pasipylė iš visų pusių. Iš ankstyvųjų jo pavyzdžių verta paminėti pagal Luis Vuitton užsakymą  Takashi Murakami sukurtą QR’ą (paveiksliukas dešinėje).

Keletą tikrai įspūdingų “susidorojimų” su QR kodu galite pamatyti čia:

QR kodo alternatyvos

Microsoft TagData Matrix kodasBrūkšninių kodų istorijos pradžia galima skaityti 1952 metus, kai buvo užpatentuotas pirmasis brūkšninis kodas, tuo metu turėjęs pravardę bulls-eye (angl. buliaus akis), dėl savo panašumo į smiginio lentos “buliaus akį”, tačiau taip pat panašus ir į nupjauto medžio kamieno rieves. O tai buvo ne kas kita, kaip “susuktas” busimojo UTC kodo pirmtakas. UTC buvo pirmą karta komerciškai nuskaitytas 1974 metais, nuo tada jį ant parduotuvėse esančių prekių galime pamatyti iki šių dienų. Laikui begant buvo sukurta ir naudojama daug alternatyvų, vien apie brūkšninių kodą variantus ir variacijas būtų galima rašyti ištisą knygą, tačiau visi nauji išradimai arba būdavo rinkos atmetami, arba naudojami tam tikrame siaurame rate. Aztec CodeMaxiCodeTodėl belieka džiaugtis, kad QR kodas pradedamas naudoti vis plačiau ir išjudina rinka iš jau vos ne pusę amžiaus trunkančios stagnacijos.

Taip pat yra keletas šiuolaikinių QR kodo alternatyvų:

  • Microsoft Tag
  • Data Matrix
  • Aztec Code
  • MaxiCode
  • ScanLife
  • ir dar daug daug…

Gan sudėtinga pasakyti kodėl, tačiau QR kodo perspektyvos šioje konkurencinėje kovoje yra šviesiausios. Be abejo jis turi neginčijamų pranašumų prieš daugelį konkurentų, nes dauguma iš pilkos masės išsiskiria tik viena ar kita savybe (pvz. skaitymo greitis ar vizualinis patrauklumas), tuo tarpu QR parodo tikrai puikius rezultatus visose srityse. Na bet pažiūrėjus iš istorinės perspektyvos į tai kaip ilgai išsilaiko rinkoje UTC, belieka manyti, kad QR tiesiog atsirado laiku ir vietoje

Na o pabaigai dar keletas įdomių faktų:

  • didžiausias QR kodas – 159 m², sukurtas AUDI, minint 100 metų jubiliejų;
  • daugiausiai QR kodų nuskaitoma su Apple operacine sistema (68%), ją vejasi Android (26%);
  • 1200% – toks QR kodo nuskaitymų prieaugis buvo nuo liepos iki gruodžio mėnesio 2010-aisiais;
  • Starbucks kavinėse nuskaitant QR kodą galima atsikaityti už prekes;
  • antkapį su QR kodu galite įsigyti Japonijoje…

Naudingos nuorodos:

Informacijos šaltiniai:


Leave a Reply

(required)

(required)