Reklama

Zdjęcia do kupienia - Depositphotos

lipca 29, 2012

Kody QR

Od pewnego czasu w Internecie, na mieście i produktach konsumenckich funkcjonują sympatycznie wyglądające, modularne kompozycje zbudowane z czarnych i białych kwadracików. Wbrew pozorom (jeśli jeszcze ktoś tego nie wie) nie jest to zabieg artystyczny mający na celu upiększanie naszego otoczenia, ale sprytnie wymyślony przez Japończyków sposób kodowania informacji.
Zadanie - rozwiąż kod, przeczytaj tekst.
QR CODE (skrót od Quick Response) to alfanumeryczny, dwuwymiarowy, matrycowy, kwadratowy kod kreskowy opracowany już w 1994 roku przez firmę Denso-Wave. Pozwala on na zapisanie, często długich, tekstowych (a i nie tylko) informacji w różnych językach. Począwszy od znaków Kanji, a skończywszy na alfabecie łacińskim.

Budowa kodu
Modułem w kodzie jest kwadrat mogący przybierać jeden z dwóch kolorów (ciemny lub jasny). Większa ilość modułów tworzy tzw. słowa kodowe, w których zapisana jest informacja o poszczególnych znakach. Wymiar modułu nie jest ściśle określony i zależy od możliwości urządzeń odczytujących i zapisujących. W związku z tym również wymiary całego kodu są zmienne. Zależą one dodatkowo od wybranej wersji kodu, która jest zależna od przyjętego poziomu korekcji błędów oraz ilości zapisanych danych.
W kodzie wykorzystuje się wzór wyszukiwania pozwalający czytnikowi na odnalezienie poszczególnych miejsc w kodzie, względem których odczytywana jest pozostała jego część. Wzór wyszukiwania składa się na trzy wzory pozycji (każdy stanowi kilkomodułowy ciemny kwadrat otoczony jasną ramką, która jest otoczona ciemną ramką), które dodatkowo są oddzielone od danych jasną ramką o szerokości jednego modułu (tzw. separatorem). Oznaczenia wzorów pozycji są umieszczone w trzech narożnikach kodu.
Dodatkowo w kodzie występuje tzw. wzór synchronizacji składający się na dwie linie o szerokości jednego modułu, z których jedna przebiega poziomo, a druga pionowo pomiędzy wzorami pozycji. Linie te zawierają na przemian ułożone ciemne i jasne kropki. Dzięki nim możliwe jest określenie wersji, gęstości kodu oraz współrzędnych poszczególnych danych w nim zapisanych.
Model 2 kodu zawiera dodatkowy wzór osiowy. Pojedynczy element wzoru osiowego składa się z czarnego modułu otoczonego białą ramką, która otoczona jest czarną ramką. Ilość elementów wzoru zależna jest od rozmiarów kodu. Model 1 kodu zawierał inne wzory, które zostały umieszczone z myślą o jego rozszerzeniu (nie zostały wykorzystane).
W części danych oprócz samych danych umieszczone są informacje o formacie i wersji kodu oraz dane niezbędne do działania mechanizmów korekcji błędów. Dookoła kodu wymagane jest stosowanie marginesu o szerokości co najmniej czterech modułów.
Inną cechą kodu jest tzw. mechanizm maskowania, który powoduje, że jasne i ciemne moduły są rozłożone w miarę równomiernie, co skutkuje zwiększeniem szybkości przetwarzania obrazów przez skanery.

Mechanizm korekcji błędów

Specyfikacja udostępnia cztery poziomy korekcji i odzyskiwania danych (algorytm Reeda-Solomona):
  • L – umożliwiający odzyskanie około 7 procent uszkodzonych danych.
  • M – umożliwiający odzyskanie około 15 procent uszkodzonych danych.
  • Q – umożliwiający odzyskanie około 25 procent uszkodzonych danych.
  • H – umożliwiający odzyskanie około 30 procent uszkodzonych danych.
Poziom korekcji wpływa na ilość danych możliwych do zapisania przez kod o określonych wymiarach (o określonej wersji). Na przykład wersja 10 (o rozmiarach 57x57 modułów) dla poziomu korekcji L pozwala na zapisanie 652 cyfr, a dla poziomu H – 288 cyfr.

Zastosowanie w mobilnych systemach

Z kodów QR można korzystać na mobilnych systemach takich jak Android przy użyciu dedykowanych oprogramowań (ZXing). Przeglądarka w Androidzie wspiera przekierowania url co pozwala na przesyłanie kodom QR metadanych do znajdujących się na urządzeniu aplikacji. System operacyjny Nokii Symbian wyposażony jest w skaner kodów kreskowych potrafiący czytać kody QR. Dla systemu Maemo czytnikiem kodów QR jest aplikacja mbarcode. W Apple iOS czytnik kodów QR nie jest natywnie obecny, ale ponad pięćdziesiąt płatnych i bezpłatnych aplikacji jest dostępnych w markecie, które potrafią zarówno odczytywać kody QR jak i je tworzyć. W urządzenia BlackBerry, aplikacja App World potrafi odczytywać kody QR, rozpoznawać w nich adres WWW i wczytywać go w systemowej przeglądarce. Windows Phone 7.5 potrafi odczytywać kody QR i otwierać zawarty w nich adres WWW przy użyciu Bing Vision. Kody QR mogą być używane także na Nintendo 3DS. W sieci znajduje się wiele stron, które zapowiadają możliwość dekodowania kodów QR. Aktualnie brak narzędzi dekodujących kody QR z plików graficznych lub przy użyciu kamer internetowych dla MacOS lub Linuxa w wersji PC co czyni ten standard kodów nieużytecznym do przechowywania danych.

Podparte wiadomościami z wiki i innych źródeł.
 

Brak komentarzy:

Prześlij komentarz