QR-kód

QR-kód [a] ( eng.  Quick response code  - quick response code [2] ; rövidítés QR code ) – a mátrix vonalkódok (vagy kétdimenziós vonalkódok ) egy fajtája, amelyet eredetileg a japán autóipar számára fejlesztettek ki . Masahiro Hara [3] alkotója . Maga a kifejezés a japán Denso cég bejegyzett védjegye . A vonalkód egy géppel olvasható optikai címke, amely információkat tartalmaz arról az objektumról, amelyhez kapcsolódik. A QR-kód négy szabványos kódolási módot (numerikus, alfanumerikus, bináris és kanji ) használ az adatok hatékony tárolására; kiterjesztések [4] is használhatók .

A QR kódrendszer az autóiparon kívül is népszerűvé vált gyors olvashatóságának és a UPC szabványos vonalkódokhoz képest nagyobb kapacitásának köszönhetően . A bővítmények közé tartozik a termékkövetés, a cikk azonosítása, az időkövetés, a dokumentumkezelés és az általános marketing [5] .

A QR-kód fehér alapon négyzetrácsban elhelyezett fekete négyzetekből áll, amelyeket képalkotó eszközök, például fényképezőgépek olvashatnak, és Reed-Solomon kódokkal dolgozhatnak fel, amíg a képet megfelelően felismerik. A szükséges adatokat ezután a kép vízszintes és függőleges komponenseiben lévő mintákból nyerik ki [5] .

Leírás

Azokban az időkben, amikor még nem volt QR-kód, a Denso gyárában különböző vonalkódokkal végeztek alkatrészszkennelést. A mintegy 10 fős létszám miatt azonban rendkívül alacsony volt a munkavégzés hatékonysága, a dolgozók pedig panaszkodtak, hogy gyorsan elfáradtak, és kérték, hogy készítsenek olyan kódot, amely több információt tartalmazhat, mint egy normál vonalkód. A dolgozó kérésének megválaszolására a Denso-Wave egy olyan kód létrehozását tűzte ki célul, amely további információkat tartalmazhat a nagysebességű komponens-ellenőrzés érdekében. [6] Ennek érdekében Masahiro Hara, aki a fejlesztési osztályon dolgozott, 1992-től új kódot kezdett fejleszteni. [7] A QR-kód ihletője a Go játékból származik, amelyet Masahiro Hara játszott az ebédszünetben. [7] Úgy döntött, hogy a tervezési cél nem csak a kódinformációk mennyiségének növelése, hanem a "pontos és gyors olvasás" is, valamint a kód olvashatóvá tétele és az olajfoltokkal, szennyeződésekkel és sérülésekkel szembeni ellenálló képessége. az adott iparágakban fogják használni. A QR-kódot a japán Denso-Wave cég vezette be 1994-ben, kétéves fejlesztési időszak után. [8] [9] [10] A Toyota Kanban ( just in time ) gyártási rendszerét szem előtt tartva tervezték , autóalkatrész-gyárakban és elosztóközpontokban való használatra. Mivel azonban magas hibaészlelési és -javítási képességgel rendelkezik , és nyílt forráskódú , kikerült a Toyota gyártási ellátási láncainak szűk köréből, és más területeken is alkalmazták, ami ahhoz vezetett, hogy mára széles körben elterjedt. nem csak Japánban, hanem az egész világon használják. A vonalkódok óriási népszerűsége Japánban oda vezetett, hogy a bennük titkosított információ mennyisége hamarosan nem felelt meg az iparágnak. A japánok új, modern módszerekkel kezdtek kísérletezni kis mennyiségű információ grafikus képbe való kódolására. A QR-kód a világ egyik leggyakrabban használt 2D-kódtípusává vált. [11] A QR-kód specifikációja nem írja le az adatformátumot .

A régi vonalkóddal ellentétben, amelyet vékony sugárral szkennelnek, a QR-kódot egy szenzor vagy kamera kétdimenziós képként érzékeli. A kép sarkain lévő három négyzet és a kódban lévő kisebb időzítő négyzetek normalizálják a kép méretét és tájolását, valamint azt a szöget, amelyben az érzékelő a kép felületéhez viszonyítva helyezkedik el. A pontok bináris számokká alakulnak az ellenőrző összeg ellenőrzésével .

A QR-kód fő előnye, hogy könnyen felismerhető a leolvasó berendezéssel, ami lehetővé teszi a kereskedelemben , a gyártásban és a logisztikában történő felhasználását .

Bár a „QR-kód” megjelölés a DENSO Corporation bejegyzett védjegye , a kódok használatáért semmilyen jogdíj nem vonatkozik , és maguk is ISO szabványként vannak leírva és közzétéve.

A legnépszerűbb QR-kód olvasók a következő adatformátumokat támogatják: URL , böngésző könyvjelző , e- mail (tárgysorral), SMS a számra (tárgysorral), MeCard, vCard , földrajzi koordináták , Wi-Fi hálózati kapcsolat .

Ezenkívül egyes programok képesek felismerni a 4 KB-nál kisebb GIF- , JPG- , PNG- vagy MID -fájlokat és a titkosított szöveget , de ezek a formátumok nem váltak népszerűvé. [13]

Alkalmazás

A QR-kódok a legelterjedtebbek Japánban. A QR-kódok már 2000 elején annyira elterjedtek az országban, hogy rengeteg plakáton, csomagon és árun is megtalálhatóak voltak, ahol szinte minden boltban árusított árura vonatkoznak ilyen kódok, reklámfüzetekben helyezik el. és segédkönyvek. QR-kód segítségével különféle versenyeket és szerepjátékokat is szerveznek . A vezető japán mobilszolgáltatók közösen adják ki márkájuk alatt a QR-kód felismerés beépített támogatásával rendelkező mobiltelefonokat [14] .

Jelenleg a QR-kód széles körben elterjedt az ázsiai országokban is, fokozatosan fejlődik Európában és Észak-Amerikában. Ő kapta a legnagyobb elismerést a mobilkommunikációs felhasználók körében - egy felismerő program telepítésével az előfizető azonnal szöveges információkat írhat be telefonjába, csatlakozhat Wi-Fi hálózathoz , leveleket küldhet e-mailben , névjegyeket vehet fel a címjegyzékbe, követheti webes hivatkozások, SMS üzenetek küldése stb.

A comScore 2011-ben végzett tanulmánya szerint 20 millió amerikai lakos használt mobiltelefont QR-kódok beolvasására [15] .

Japánban, Ausztriában és Oroszországban a temetőkben is használják a QR-kódokat, amelyek információkat tartalmaznak az elhunytról [16] [17] [18] .

A kínai Hefei városában QR-kóddal ellátott jelvényeket osztottak ki az időseknek, amelyeknek köszönhetően a járókelők segíthetnek hazatérni az elveszett időseknek [19] .

A QR-kódokat a múzeumok [20] , valamint a turizmusban is aktívan használják, mind a turistautak mentén, mind a különféle objektumoknál. A fémből készült lemezek tartósabbak és ellenállóbbak a vandalizmussal szemben.

QR-kódok használata az oltások megerősítésére

A COVID-19 elleni tömeges védőoltás 2021 tavaszi megkezdésével egyidejűleg a világ szinte minden országában megkezdődött az oltási dokumentumok – digitális vagy papíralapú tanúsítványok – kiadása, amelyeken mindenhol QR-kódokat helyeztek el. 2021. november 9-ig az Orosz Föderáció 77 tagországában vezették be a QR-kódokat az oltás vagy korábbi betegség ( COVID-19 ) megerősítésére (néhány országban a QR-kódok bevezetése késik, hogy a lakosság lehetőséget kapjon oltva). Tatárországban a QR-kódok bevezetése tömegek kialakulásához vezetett a metró bejáratánál, és számos konfliktushoz vezetett az utasok és a tömegközlekedés vezetői között [ 21] .

Általános műszaki információk

A legkisebb QR-kód (1-es verzió) 21×21 pixel méretű (margók nélkül), a legnagyobb (40-es verzió) 177×177 pixel. A verziószám és a modulok száma közötti kapcsolat egyszerű - a következő verzió QR-kódja szigorúan 4 modullal nagyobb, mint az előzőé vízszintesen és függőlegesen.

A QR-kódoknak négy fő kódolása létezik:

Léteznek "pszeudokódolások" is: az adatok kódolásának meghatározása, egy hosszú üzenet több kódra osztása stb.

A hibák kijavításához a Reed-Solomon kódot használjuk egy 8 bites kódszóval. A redundancia négy szintje van: 7, 15, 25 és 30%. A hibajavításnak köszönhetően lehetőség van QR kódra képet feltenni és olvashatóan hagyni.

Annak érdekében, hogy a kódban ne legyenek olyan elemek, amelyek megzavarhatják a szkennert, az adatterületet modulo 2 -ként egy speciális maszkkal egészítik ki. Egy megfelelően működő kódolónak ki kell próbálnia az összes maszk opciót, mindegyikhez speciális szabályok szerint ki kell számítania a büntetőpontokat, és ki kell választania a legsikeresebbet.

Micro QR

Külön van egy mikro QR-kód, amely legfeljebb 35 számjegyet tartalmazhat.

Az adattárolás hatékonyságát a hagyományos QR-kóddal összehasonlítva nagymértékben javítja egyetlen pozicionáló tag használata, szemben a hagyományos QR-kód három címkéjével. Emiatt felszabadul egy bizonyos hely, amit az adatok tárolására lehet használni. Ezenkívül a QR-kódhoz legalább 4 modul szélességű szabad margó szükséges (a QR-kód minimális szerkezeti egysége), míg a Micro QR-kódhoz két modul széles margó szükséges. Az adattárolás nagyobb hatékonysága miatt a Micro QR kód mérete nem növekszik annyira a kódolt adatok mennyiségének növekedésével a hagyományos QR kódhoz képest.

A QR-kódok hibajavítási szintjeivel analóg módon a Micro QR-kód négy változatban érhető el, M1-M4 [22] [23] .

Kód verzió Modulok száma Hibajavítási szint Számok Számok és betűk Bináris adatok Kanji
M1 tizenegy - 5 - - -
M2 13 L (7%) tíz 6 - -
M (15%) nyolc 5 - -
M3 tizenöt L (7%) 23 tizennégy 9 6
M (15%) tizennyolc tizenegy 7 négy
M4 17 L (7%) 35 21 tizenöt 9
M (15%) harminc tizennyolc 13 nyolc
Q (25%) 21 13 9 5

Adatkódolás

Az információk QR-kódba való kódolásának többféle módja van, és egy adott módszer kiválasztása a használt szimbólumoktól függ. Ha csak 0-tól 9-ig terjedő számokat használunk, akkor numerikus kódolás használható, ha a számok mellett a latin ábécé betűit, szóközt és szimbólumokat kell titkosítani $%*+-./:, alfanumerikus kódolást használunk. Létezik kanji kódolás is, ami a kínai és japán karakterek titkosítására szolgál, valamint bájtkódolás. Minden kódolási módszer előtt egy üres bitsorozat jön létre, amelyet azután kitölt.

Digitális kódolás

Ez a típusú kódolás 10 bitet igényel 3 karakterenként. A teljes karaktersorozat 3 számjegyű csoportokra van osztva, és mindegyik csoportot (háromjegyű szám) 10 bites bináris számmá fordítjuk, és hozzáadjuk a bitsorozathoz. Ha a karakterek teljes száma nem 3 többszöröse, akkor ha 2 karakter marad a végén, akkor a kapott kétjegyű számot 7 bittel, ha 1 karaktert, akkor 4 bittel kódoljuk.

Például van egy "12345678" karakterlánc, amelyet kódolni kell. A sorozatot számokra osztják: 123, 456 és 78, majd mindegyik számot bináris alakra alakítják át: 0001111011, 0111001000 és 1001110, és egy bitfolyamba egyesítik: 0001111011011100101010.

Alfanumerikus kódolás

A digitális kódolással ellentétben 2 karakter kódolásához 11 bit információra van szükség. A karaktersorozat 2-es csoportokra van osztva, a csoportban minden karakter a „Karakterértékek alfanumerikus kódolásban” táblázat szerint van kódolva. Az első karakter értékét megszorozzuk 45-tel, majd a második karakter értékét hozzáadjuk ehhez a szorzathoz. A kapott számot 11 bites bináris számmá alakítjuk, és hozzáadjuk a bitsorozathoz. Ha az utolsó csoportban maradt egy karakter, akkor annak értéke 6 bites számként van kódolva. Vegyünk egy példát: „BIZONYÍTÁS”. A karaktersorozatot csoportokra osztjuk: PR , OO , F . Minden csoporthoz megtaláljuk a megfelelő értékeket a szimbólumokhoz (nézze meg a táblázatot): PR  - (25,27), OO  - (24,24), F  - (15). Keresse meg az egyes csoportok értékeit: 25 × 45 + 27 = 1152, 24 × 45 + 24 = 1104, 15 = 15. Alakítsa át az egyes értékeket binárissá: 1152 = 10010000000, 1104 = 100010100 egybe = 10010100 = 10010100. sorrend: 1001000000010001010000001111.

Byte kódolás

Bármely karakter kódolható így. A bemeneti karakterfolyamot bármilyen kódolással kódolják (az UTF-8- ban ajánlott ), majd bináris formátumba konvertálják, majd egyetlen bitfolyammá egyesítik.

Például a "World" szó Unicode-ban (HEX) van kódolva UTF-8- ban : M - D09C; és - D0B8; p - D180. Minden értéket lefordítunk a bináris rendszerbe: D0 = 11010000, 9C = 10011100, D0 = 11010000, B8 = 10111000, D1 = 11010001 és 80 = 10000000; egyesítsd egy bitfolyamba: 11010000 10011100 11010000 10111000 11010001 10000000.

Kanji

A hieroglifák (valamint más szimbólumok) kódolása egy vizuálisan észlelt táblázaton vagy a hieroglifák képeinek listáján alapul a kódjaikkal együtt. Az ilyen táblázatot "karakterkészletnek" nevezik. A japánok számára két karaktertábla elsődleges fontosságú: JIS 0208:1997 és JIS 0212:1990. A második az első kiegészítéseként szolgál. A JIS 0208:1997 94 oldalra, 94 karakterből áll. Például a 4. oldal a hiragana, az 5. oldal a katakana, a 7. oldal a cirill, a 16-43 az 1. szintű kandzsi és a 48-83 a 2. szintű kandzsi. Az 1. szintű kandzsi ("JIS daiichi suijun kanji") az onm szerint van rendezve. A 2. szintű kandzsi ("JIS daini suijun kanji") kulcsok, azon belül pedig az ütések száma szerint vannak rendezve.

Szolgáltatási információk hozzáadása

A kódverzió és a kódolás meghatározása után meg kell határozni a hibajavítás mértékét. A táblázat a korrekciós szintek maximális értékeit mutatja a QR-kód különböző verzióihoz. A hibák kijavításához a Reed-Solomon kódot használjuk egy 8 bites kódszóval.

Asztal. Az információ maximális mennyisége.
Sor – javítási szint, oszlop – verziószám.

egy 2 3 négy 5 6 7 nyolc 9 tíz tizenegy 12 13 tizennégy tizenöt 16 17 tizennyolc 19 húsz
L 152 272 440 640 864 1088 1248 1552 1856 2192 2592 2960 3424 3688 4184 4712 5176 5768 6360 6888
M 128 224 352 512 688 864 992 1232 1456 1728 2032 2320 2672 2920 3320 3624 4056 4504 5016 5352
K 104 176 272 384 496 608 704 880 1056 1232 1440 1648 1952 2088 2360 2600 2936 3176 3560 3880
H 72 128 208 288 368 480 528 688 800 976 1120 1264 1440 1576 1784 2024 2264 2504 2728 3080
21 22 23 24 25 26 27 28 29 harminc 31 32 33 34 35 36 37 38 39 40
L 7456 8048 8752 9392 10208 10960 11744 12248 13048 13880 14744 15640 16568 17528 18448 19472 20528 21616 22496 23648
M 5712 6256 6880 7312 8000 8496 9024 9544 10136 10984 11640 12328 13048 13800 14496 15312 15936 16816 17728 18672
K 4096 4544 4912 5312 5744 6032 6464 6968 7288 7880 8264 8920 9368 9848 10288 10832 11408 12016 12656 13328
H 3248 3536 3712 4112 4304 4768 5024 5288 5608 5960 6344 6760 7208 7688 7888 8432 8768 9136 9776 10208

A hibajavítási szint meghatározása után szervizmezők hozzáadása szükséges, ezek a kódolási szakasz után kapott bitsorozat elé kerülnek kiírásra. Jelzik a kódolási módot és az adatmennyiséget. A kódolási módszer mező értéke 4 bitből áll, nem változik, hanem jelként szolgál, amely jelzi, hogy melyik kódolási módszert alkalmazzuk. Ennek a következő jelentései vannak:

Példa:

A korábbi bájtkódolási példa a "World" szót kódolta, ami a következő bináris kódsorozatot eredményezte:

11010000 10011100 11010000 10111000 11010001 10000000, amely 48 bitet tartalmaz.

Legyen szükséges a H hibajavítás szintje, amely lehetővé teszi az elveszett információ 30%-ának helyreállítását. A táblázat szerint a maximális információmennyiségből választják ki a QR-kód optimális verzióját (jelen esetben az 1-es verziót, amely 72 bit hasznos információ kódolását teszi lehetővé H hibajavítási szinten).

Információ a kódolási módról: a 0100-as mező a bájtkódolásnak felel meg.

Az adatok mennyiségének jelzése (numerikus és alfanumerikus kódolásnál - karakterek száma, bájtkódolásnál - bájtok száma): ez a sorozat 6 bájt adatot tartalmaz (binárisan: 110).

A táblázat szerint a bináris szám szükséges hosszát meghatározzák - 8 bit. A hiányzó nullákat hozzáadjuk: 00000110.

1-9 verzió 10-26 verzió 27-40-es verzió
Digitális 10 bites 12 bites 14 bites
Alfanumerikus 9 bites 11 bites 13 bites
Byte 8 bites 16 bites 16 bites

Minden információ a <kódolási mód> <adatmennyiség> <adat> sorrendben van írva, ami egy bitsorozatot eredményez:

0100 00000110 11010000 10011100 11010000 10111000 11010001 10000000.

Blokkolás

A bájtok sorozata a verzióhoz és a korrekciós szinthez definiált blokkok számára van felosztva, amelyet a "Blokkszám" táblázat ad meg. Ha a blokkok száma egyenlő egy, akkor ez a lépés kihagyható. És amikor a verziót frissítik, speciális blokkokat adnak hozzá.

Először is meg kell határozni a bájtok (adatok) számát az egyes blokkokban. Ehhez el kell osztani a teljes bájtszámot az adatblokkok számával. Ha ez a szám nem egész szám, akkor meg kell határoznia az osztás maradékát. Ez a maradék határozza meg, hogy az összes blokk közül hány blokk van kitöltve (olyan blokkok, amelyekben a bájtok száma eggyel több, mint a többiben). A várakozásokkal ellentétben a párnázott blokkok ne az első, hanem az utolsó blokkok legyenek. Ezután következik a blokkok egymás utáni feltöltése.

Példa: 9-es verziónál és M korrekciós szintnél az adatmennyiség 182 bájt, a blokkok száma 5. Az adatbájtok számát elosztva a blokkok számával, 36 bájtot kapunk, a maradékban 2 bájt. Ez azt jelenti, hogy az adatblokkok a következő méretűek lesznek: 36, 36, 36, 37, 37 (byte). Ha nem lenne maradék, akkor mind az 5 blokk mérete 36 bájt lenne.

A blokk teljesen meg van töltve az adatok bájtjaival. Amikor az aktuális blokk megtelik, a sor a következőre lép. Az adatbájtoknak pontosan minden blokkhoz elegendőnek kell lenniük, se több, se kevesebb.

Javító bájtok létrehozása

A folyamat a Reed-Solomon algoritmuson alapul . Ezt a QR-kód minden információs blokkjára alkalmazni kell. Először meghatározzuk a létrehozandó korrekciós bájtok számát, majd ezen adatok alapján generálási polinomot készítünk. A blokkonkénti korrekciós bájtok számát a kiválasztott kód verziója és hibajavítási szintje határozza meg (a táblázatban található).

Asztal. Korrekciós bájtok száma blokkonként
Sor — korrekciós szint, oszlop — verziószám.
egy 2 3 négy 5 6 7 nyolc 9 tíz tizenegy 12 13 tizennégy tizenöt 16 17 tizennyolc 19 húsz 21 22 23 24 25 26 27 28 29 harminc 31 32 33 34 35 36 37 38 39 40
L 7 tíz tizenöt húsz 26 tizennyolc húsz 24 harminc tizennyolc húsz 24 26 harminc 22 24 28 harminc 28 28 28 28 harminc harminc 26 28 harminc harminc harminc harminc harminc harminc harminc harminc harminc harminc harminc harminc harminc harminc
M tíz 16 26 tizennyolc 24 16 tizennyolc 22 22 26 harminc 22 22 24 24 28 28 26 26 26 26 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28 28
K 13 22 tizennyolc 26 tizennyolc 24 tizennyolc 22 húsz 24 28 26 24 húsz harminc 24 28 28 26 harminc 28 harminc harminc harminc harminc 28 harminc harminc harminc harminc harminc harminc harminc harminc harminc harminc harminc harminc harminc harminc
H 17 28 22 16 22 28 26 26 24 28 24 28 22 24 24 harminc 28 28 26 28 harminc 24 harminc harminc harminc harminc harminc harminc harminc harminc harminc harminc harminc harminc harminc harminc harminc harminc harminc harminc

A generáló polinomot a korrekciós bájtok száma határozza meg (a táblázatban található).


Asztal. Polinomok generálása.
Korrekciós bájtok száma Polinom generálása
7 87, 229, 146, 149, 238, 102, 21
tíz 251, 67, 46, 61, 118, 70, 64, 94, 32, 45
13 74, 152, 176, 100, 86, 100, 106, 104, 130, 218, 206, 140, 78
tizenöt 8, 183, 61, 91, 202, 37, 51, 58, 58, 237, 140, 124, 5, 99, 105
16 120, 104, 107, 109, 102, 161, 76, 3, 91, 191, 147, 169, 182, 194, 225, 120
17 43, 139, 206, 78, 43, 239, 123, 206, 214, 147, 24, 99, 150, 39, 243, 163, 136
tizennyolc 215, 234, 158, 94, 184, 97, 118, 170, 79, 187, 152, 148, 252, 179, 5, 98, 96, 153
húsz 17, 60, 79, 50, 61, 163, 26, 187, 202, 180, 221, 225, 83, 239, 156, 164, 212, 212, 188, 190
22 210, 171, 247, 242, 93, 230, 14, 109, 221, 53, 200, 74, 8, 172, 98, 80, 219, 134, 160, 105, 165,
24 229, 121, 135, 48, 211, 117, 251, 126, 159, 180, 169, 152, 192, 226, 228, 218, 111, 0, 117, 232, 2, 8, 232, 2
26 173, 125, 158, 2, 103, 182, 118, 17, 145, 201, 111, 28, 165, 53, 161, 21, 245, 142, 13, 102, 142, 13, 102, 48,5,5 70
28 168, 223, 200, 104, 224, 234, 108, 180, 110, 190, 195, 147, 205, 27, 232, 201, 21, 43, 245, 21, 245, 21,2,4,2 37, 9, 123
harminc 41, 173, 145, 152, 216, 31, 179, 182, 50, 48, 110, 86, 239, 96, 222, 125, 42, 173, 226, 193, 173, 226, 193, 173, 226, 193, 31, 22, 5 216, 238, 40, 192, 180

A számítás a kezdeti adattömb értékei és a generáló polinom értékei alapján, valamint a ciklus minden lépésére külön-külön történik.

Információs blokkok kombinálása

Ebben a szakaszban két kész blokk van: kezdeti adatok és korrekciós blokkok (az előző lépésből), ezeket egy bájtfolyamba kell kombinálni. Viszont minden adatblokkból egy bájtnyi információt kell venni, az elsőtől kezdve az utolsóig. Amikor a sor eléri az utolsó blokkot, egy bájt kerül belőle, és a sor az első blokkhoz kerül. Ez addig folytatódik, amíg minden blokkban el nem fogy a bájt. Vannak kivételek, amikor az aktuális blokk kihagyásra kerül, ha nincsenek benne bájtok (olyan helyzet, amikor a közönséges blokkok már üresek, és még van egy bájt a kitömöttekben). Ugyanez igaz a korrekciós bájtok blokkjaira is. Ugyanabban a sorrendben kerülnek felvételre, mint a megfelelő adatblokkok.

Az eredmény a következő adatsor: <1. adatblokk 1. bájtja> 2. adatblokk 1. bájtja>…<n. adatblokk 1. bájtja>< 1. blokk adatok 2. bájtja>…<(m — A blokk><1. bájt a 2. korrekciós bájt blokkjából>…<1. bájt az n-edik korrekciós bájt blokkból><2. bájt 1. korrekciós bájt blokk>…<Az 1. korrekciós bájt blokk l-edik bájtja>…<l-edik bájt az n-edik javító bájt blokk>.

Itt n az adatblokkok száma, m az adatblokkonkénti bájtok száma közönséges blokkoknál, l a korrekciós bájtok száma, k az adatblokkok száma mínusz a kitöltött adatblokkok száma (azok, amelyek 1 bájttal többet tartalmaznak ).

Az információ kódmezőben való elhelyezésének szakasza

A QR-kódon kötelezően kitöltendő mezők vannak, ezek nem tartalmaznak kódolt információkat, de a dekódoláshoz szükséges információkat tartalmaznak. Azt:

valamint a kód körüli kötelező behúzás . A párnázás fehér modulokból álló keret, szélessége 4 modul.

A keresési minták  3 négyzetből állnak a sarkokban, kivéve a jobb alsót. A kód helyének meghatározására szolgál. Egy 3x3-as fekete modulokból álló négyzetből állnak, egy 1-es szélességű fehér modulok kerete körül, majd egy másik, szintén 1-es szélességű fekete modulokból álló keretből és egy kerítésből a kód többi részéből - fél keret fehér modulok szélessége 1. Ezek az objektumok összesen 8×8 modul méretűek.

Igazítási minták  - a második verziótól kezdve a kód további stabilizálására, pontosabb elhelyezésére szolgálnak a dekódolás során. 1 db fekete modulból állnak, amely körül van egy 1 szélességű fehér modulokból álló keret, majd egy másik, szintén 1 szélességű fekete modulokból álló keret található. Az igazítási minta végső mérete 5x5. A verziószámtól függően különböző pozíciókban vannak ilyen minták. Az igazítási minták nem fedhetik át a keresési mintákat. Az alábbiakban egy táblázat található a központi fekete modul helyéről, a számok ott vannak feltüntetve - ezek lehetséges koordináták, mind vízszintesen, mind függőlegesen. Ezek a modulok az ilyen koordináták metszéspontjában állnak. A visszaszámlálás a bal felső csomóponttól indul, koordinátái (0,0).

egy 2 3 négy 5 6 7 nyolc 9 tíz tizenegy 12 13 tizennégy tizenöt 16 17 tizennyolc 19 húsz
- tizennyolc 22 26 harminc 34 6, 22, 38 6, 24, 42 6, 26, 46 6, 28, 50 6, 30, 54 6, 32, 58 6, 34, 62 6, 26, 46, 66 6, 26, 48, 70 6, 26, 50, 74 6, 30, 54, 78 6, 30, 56, 82 6, 30, 58, 86 6, 34, 62, 90
21 22 23 24 25 26 27 28 29 harminc 31 32 33 34 35 36 37 38 39 40
6, 28, 50, 72, 94 6, 26, 50, 74, 98 6, 30, 54, 78, 102 6, 28, 54, 80, 106 6, 32, 58, 84, 110 6, 30, 58, 86, 114 6, 34, 62, 90, 118 6, 26, 50, 74, 98, 122 6, 30, 54, 78, 102, 126 6, 26, 52, 78, 104, 130 6, 30, 56, 82, 108, 134 6, 34, 60, 86, 112, 138 6, 30, 58, 86, 114, 142 6, 34, 62, 90, 118, 146 6, 30, 54, 78, 102, 126, 150 6, 24, 50, 76, 102, 128, 154 6, 28, 54, 80, 106, 132, 158 6, 32, 58, 84, 110, 136, 162 6, 26, 54, 82, 110, 138, 166 6, 30, 58, 86, 114, 142, 170

Szinkronizálási sávok  - a modulok méretének meghatározására szolgál. Egy sarokban helyezkednek el, az egyik a bal alsó keresési mintából indul (a fekete keret szélétől, de átlépve a fehéret), a bal felsőbe megy, és onnan kezdődik a második, ugyanazon szabály szerint. , a jobb felső sarokban végződik. A szintező modulra rétegezve változatlannak kell maradnia. A szinkronizálási csíkok úgy néznek ki, mint a váltakozó fekete-fehér modulok sorai.

A maszk és a korrekciós szint kódja  a keresési minták mellett található: a jobb felső alatt (8 modul) és a jobb alsó bal alsó részen (7 modul), és a bal felső oldal oldalán duplikálódik, egy réssel. a 7. cella - ahová a szinkronizációs sávok mennek, ráadásul a vízszintes kód a függőleges részbe, a függőleges kód pedig a vízszintesbe.

Verziókód  – a kód verziójának meghatározásához szükséges. A jobb felső saroktól balra és a bal alsó sarokban találhatók, és megkettőződnek. Így duplikálódnak - a felső kód tükörmásolata az óramutató járásával ellentétes irányban 90 fokkal el van forgatva. Az alábbiakban a kódok táblázata látható, 1 - fekete modul, 0 - fehér.

Változat 7 nyolc 9 tíz tizenegy 12 13 tizennégy tizenöt 16 17 tizennyolc 19 húsz 21 22 23
Verziókód 000010 011110 100110 010001 011100 111000 110111 011000 000100 101001 111110 000000 001111 111010 111100 001101 100100 011010 101011 100000 100110 110101 000110 100010 010011 000010 011110 011100 010001 011100 111010 010101 100000 100100 110011 100100 000010 110111 011000 000000 101001 111110 100110 101101 000010 111000 001011 000110 011110 001111 111010
24 25 26 27 28 29 harminc 31 32 33 34 35 36 37 38 39 40
001101 001101 100100 101011 001001 011000 110101 101111 011100 010011 101011 100000 010001 110101 000110 110111 110001 111010 101001 010111 111110 001111 010011 000010 101000 011000 101101 001110 011100 010001 010000 111010 010101 110110 111110 101001 110100 100000 001111 010010 100100 110011 001100 000010 110111 101010 000110 001011 111001 000100 010101

Adatok bevitele

A fennmaradó szabad területet 2 modul széles oszlopokra osztják, és oda írják be az információkat, és ezt „kígyóval” teszik. Először az információ első bitje kerül be a jobb alsó négyzetbe, majd a bal oldali szomszédjába, majd az első fölött lévőbe, és így tovább. Az oszlopokat alulról felfelé, majd felülről lefelé stb., a szélek mentén pedig az egyik oszlop szélső bitjétől a szomszédos oszlop szélső bitjéig töltik ki, ami a "kígyót" állítja az oszlopokon. lefelé irányuló iránnyal. Ha az információ nem elegendő, akkor a mezőket egyszerűen üresen kell hagyni (fehér modulok). Ebben az esetben minden modulra maszk kerül.

Lásd még

Jegyzetek

  1. M. A. Osadchiy szóalkotási szakember a „grafikus kód” kifejezés orosz nyelvű megfelelőjeként való használatát javasolja [2] .
  1. A kínai vonatjegyeken található QR kódok személyes adatokat szivároghatnak ki . Az eredetiből archiválva: 2013. december 12. Letöltve: 2013. március 16.
  2. 1 2 A Puskin Intézet a QR-kód átnevezését javasolta. Archív másolat 2022. február 10-én a Wayback Machine -en // Radio Sputnik , 2022.10.02.
  3. A QR-kód története Ezt a technológiát egy japán mérnök találta ki, miközben a munkahelyén játszotta a Go-t . Letöltve: 2021. november 8. Az eredetiből archiválva : 2021. november 8..
  4. QR-kód  funkciók . Denso Wave. Letöltve: 2017. augusztus 27. Az eredetiből archiválva : 2013. január 29.
  5. 1 2 QR Code Essentials  (angol)  (a hivatkozás nem elérhető) . Denso ADC (2011). Letöltve 2017. augusztus 28. Az eredetiből archiválva : 2013. május 12.
  6. Borko Furht. A kiterjesztett valóság kézikönyve . - Springer, 2011. - P. 341. - ISBN 9781461400646 .
  7. 1 2 ヒント は 休憩 の の 囲碁 囲碁 だっ た た 『『 qr コード 』開発 生み の 親 明かす「 特許 オープン に し た 」ワケ ワケテレビ 放送 放送 放送 放送 放送 放送 放送 放送(November 29 ,  2019). Archiválva : 2020. szeptember 30. Letöltve: 2019. november 29.
  8. NHKビジネス特集 「QRコード」生みの親に聞いてみた Archiválva : 2019. május 20., a Wayback Machine -en , 2019. május 20 .
  9. 2D vonalkódok . NHK World-Japan (2020. március 26.). Letöltve: 2020. április 24. Az eredetiből archiválva : 2020. április 7..
  10. Denso-Wave weboldal . Letöltve: 2012. szeptember 18. Az eredetiből archiválva : 2012. október 16..
  11. QR-kód – A 2D kódról (lefelé irányuló kapcsolat) . Denso Wave. Letöltve: 2016. május 27. Az eredetiből archiválva : 2016. június 5. 
  12. "Eugene Onegin" - most a QR-kódban is (elérhetetlen link) . Letöltve: 2020. november 23. Az eredetiből archiválva : 2020. november 27. 
  13. A QR-kódok népszerűsége . Letöltve: 2022. január 8. Az eredetiből archiválva : 2022. január 8..
  14. QR kód: használat . Letöltve: 2010. március 14. Az eredetiből archiválva : 2014. június 6..
  15. Leonyid Bugaev. 2012, 167. oldal
  16. QR kódok a temetőkben . Letöltve: 2020. április 24. Az eredetiből archiválva : 2021. május 15.
  17. QR-kódok a temetőkben (elérhetetlen link) . Letöltve: 2012. október 24. Az eredetiből archiválva : 2014. június 6.. 
  18. Jurij Nikulin unokája egy interaktív emlékműről beszél (hozzáférhetetlen link) . Digitális Örökség (2017. augusztus 21.). Letöltve: 2017. augusztus 27. Az eredetiből archiválva : 2017. augusztus 23.. 
  19. Jelvények QR-kóddal, hogy megtalálják a hazavezető utat . Letöltve: 2014. október 15. Az eredetiből archiválva : 2014. november 19..
  20. 2012. évi Múzeumi Nap reklámja . Letöltve: 2012. március 2. Az eredetiből archiválva : 2014. április 24..
  21. Mit lehet tudni a QR-kódok közterületi bevezetéséről szóló törvényjavaslatról? Archív másolat 2021. december 20-án a Wayback Machine -nél // TASS , 2021.12.16.
  22. Micro QR kód leírás | Új generációs QR kódok . qrcc.ru. Letöltve: 2018. június 9. Az eredetiből archiválva : 2018. június 12.
  23. Micro QR Code | qrcode.com |  DENSO WAVE . www.qrcode.com Letöltve: 2019. május 31. Az eredetiből archiválva : 2019. május 31.

Irodalom

Linkek