mini|alt=QR Code mit einem Link zur Wikipedia|Die Zeichenkette „https://de.wikipedia.org“ als QR-Code (mit Fehlerkorrektur-Level M)
Der QR-Code (, „schnelle Antwort“, als Markenbegriff „QR Code“) ist ein zweidimensionaler Code, der von dem Tochterunternehmen Denso Wave der japanischen Firma Denso im Jahr 1994 entwickelt wurde. Aufgrund einer Fehlerkorrektur ist dieses Verfahren sehr robust und daher weit verbreitet. Weiterentwicklungen sind der Micro-QR-Code, der Secure-QR-Code (SQRC), der iQR-Code und der Frame-QR-Code.
Geschichte mini|„Wikipedia ist ein Projekt zum Aufbau einer Enzyklopädie aus freien Inhalten in über 270 Sprachen, zu dem du mit deinem Wissen beitragen kannst.“ als QR-Code mini|In Holz geschnittenerStruktur des QR-Codes vermutlich gelasert und nicht mechanisch bearbeitet. QR-Code
Der QR-Code wurde zur Markierung von Baugruppen und Komponenten für die Logistik in der Automobilproduktion des Toyota-Konzerns entwickelt. Das den QR-Code entwickelnde Unternehmen Denso kooperiert bereits seit seiner Ausgliederung aus dem Konzern 1949 als Zulieferer unter anderem für sämtliche elektrischen und elektronischen Baugruppen mit Toyota. Die Entwicklung des 2D-Codes übernahm die Tochterfirma Denso Wave, die auch Identifikationssysteme und Geräte zur mobilen Datenerfassung entwickelt. Entwickelt wurde der QR-Code ab 1992 von Masahiro Hara und seinen Teammitgliedern Takayuki Nagaya, Motoaki Watabe, Tadao Nojiri und Yuji Uchiyama. Für die Form des QR-Codes ließ sich Hara von dem Brettspiel Go inspirieren. Das QR-Code-Verfahren wurde erstmals im Jahr 1994 zum Patent angemeldet.
Masahiro Hara und sein Team gewannen 2014 den Publikumspreis des Europäischen Erfinderpreises des Europäischen Patentamtes in der Kategorie „Außereuropäische Staaten“.
Grundlagen Der QR-Code besteht aus einer quadratischen Matrix aus schwarzen und weißen Quadraten oder Punkten, Module genannt, die die kodierten Daten binär darstellen. Eine spezielle Markierung in drei der vier Ecken des Quadrats gibt die Orientierung vor. Die Daten im QR-Code sind durch einen fehlerkorrigierenden Code erweitert. Dadurch wird der Verlust von bis zu 30 % des Codes toleriert, d. h., er kann auch dann noch dekodiert werden.
Standards Es gibt mehrere Standards, welche die Kodierung von QR-Codes beschreiben.
10. März 1995 – Europäisches Patent Nummer EP0672994 Oktober 1997 – AIM (Association for Automatic Identification and Mobility) International Januar 1999 – JIS X 0510 Juni 2000 – ISO/IEC 18004:2000 (zurückgezogen)Definiert QR-Code-Modell 1 und QR-Code-Modell 2 November 2004 – Erweiterung des JIS X 0510 um Micro-QR-Code 1. September 2006 – ISO/IEC 18004:2006Definiert QR-Code 2005, eine Erweiterung des QR-Code-Modells 2; spezifiziert nicht, wie QR-Code-Modell 1 gelesen werden kann, sondern baut auf QR-Code-Modell-1-Spezifikationen auf
Der QR-Code ist in folgenden Ländern als nationaler Standard eingetragen:
Land Standard Japan Japanese Industrial Standard JIS X 0510 China Chinese National Standard GB/T 18284 Südkorea Korean National Standard KSXISOIEC 18004 Vietnam Vietnamese National Standard TCVN 7322 Singapur Singapore National Standard SS 543 (’09)
Abseits der offiziellen Standards hat NTT DoCoMo De-facto-Standards für die Kodierung von URLs, Kontaktinformationen und weiteren Datentypen definiert. Das Open-Source-Projekt „ZXing“ führt eine Liste mit QR-Code-Datentypen.
Aufbau mini|hochkant=1.5|QR-Code-Strukturbeispiel
Im Code enthalten sind die Versionsinformation (1 auf der nebenstehenden Grafik) und das benutzte Datenformat (2). Der Datenteil (3) enthält die kodierten Daten und Informationen zur Fehlerkorrektur. Zur Feldbegrenzung enthält der QR-Code in nur drei seiner Ecken ein bestimmtes Muster (4.1). Über das fehlende Muster in der vierten Ecke erkennt das Lesegerät die Orientierung. Mit zunehmender Größe des Codes werden weitere Muster (4.2) hinzugefügt, um die Ausrichtung des Codes besser erkennbar zu machen. Zwischen den drei Hauptpositionsmarkierungen befindet sich eine Linie (4.3) aus einer Folge streng abwechselnder Bits, worüber sich die Matrix definiert. Ein Bit direkt oberhalb der Format-Information, das dark module (4.4), repräsentiert die dunkle Farbe des Codes. Wichtig ist ebenfalls der weiße Rand, die sog. Ruhezone (5), um den Code so von anderen Informationen zu trennen.
Versionsgrößen Der mit Version bezeichnete Wert kodiert die Anzahl der vorkommenden Modulspalten (und -zeilen, da quadratisch). Aus der Versionsnummer ergibt sich diese Anzahl mit der Formel (Versionsnummer – 1) * 4 + 21. Die kleinste Version 1 hat also 21 × 21 Module, und die größtmögliche Version 40 ist 177 × 177 Module (39 * 4 + 21 = 177) groß.
Kapazität und Fehlertoleranz mini|Der Text „Wikipedia, die freie Enzyklopädie“ als QR-Code in allen vier möglichen Fehlerkorrektur-Levels (von oben nach unten: L, M, Q, H)
Die Symbolelemente sind Quadrate, von denen sich mindestens 21×21 und maximal 177×177 Elemente im Symbol befinden. Die Randzone, als Ruhezone bezeichnet, sollte mindestens vier Elemente breit sein. Größere Inhalte lassen sich auf bis zu 16 einzelne Codes aufteilen.
Es existieren vier Fehlerkorrektur-Levels, die eine Rekonstruktion von 7 % (Level L) bis zu 30 % (Level H) beschädigter Daten zulassen. Dabei kommt die Fehlerkorrektur der Reed-Solomon-Codierung zum Einsatz. Diese Eigenschaft wird bei der Erstellung sogenannter „Design-Codes“ ausgenutzt (siehe Abschnitt: Design-QR-Code).
+ Kapazität der verschiedenen Fehlerkorrektur-Levels Level Anteil der Codewörter/Daten, die wiederhergestellt werden können L (Low) 7 % M (Medium) 15 % Q (Quartile) 25 % H (High) 30 %
Der maximale Informationsgehalt eines QR-Codes (177×177 Elemente, Fehlerkorrektur-Level „L“) beträgt 23.648 Bit (2.956 Byte). Damit lassen sich laut Hersteller 7089 Dezimalziffern, 4296 alphanumerische Zeichen oder 1817 Kanji-/Kana-Zeichen kodieren.
Für Kanji- und Kana-Schriftzeichen (U+4E00 bis U+9FFF, U+3040 bis U+309F, U+30A0 bis U+30FF) existiert ein separates Kodierungsverfahren.
Der Micro-QR-Code mit einer Größe zwischen 11×11 und 17×17 Elementen nimmt bis zu 35 Ziffern auf, bei einer Randbreite von mindestens zwei Elementen.
Lizenz mini|Japanische Aufenthaltsgenehmigung (Landing Permission) mit (für Wikipedia) anonymisiertem QR-Code
Die Verwendung des QR-Codes ist lizenz- und kostenfrei. Die Spezifikationen wurden von Denso Wave offengelegt und sind über die Internationale Organisation für Normung in der Schweiz erhältlich. Der Name „QR Code“ ist in Japan, den Vereinigten Staaten von Amerika, Australien und Europa als eingetragenes Warenzeichen von Denso Wave Incorporated besonders geschützt. Ein entsprechender Hinweis sollte bei Verwendung angebracht werden.
Der QR-Code ist als öffentlicher Standard etabliert. In Japan ist er sehr weit verbreitet, man findet ihn dort auf nahezu jedem Werbeplakat. Auch die japanische Regierung verwendet den QR-Code. So benutzt zum Beispiel die japanische Einwanderungsbehörde den QR-Code mit codierten Daten für das Visum, das bei der Einreise in den Reisepass eingeklebt wird.
Darstellung Der QR-Code kann mit allen gängigen Verfahren problemlos gedruckt werden. Wie beim Strichcode ist allerdings auch hier ein möglichst hoher Kontrast wichtig, idealerweise schwarz auf weiß. Abhängig von den Möglichkeiten des verwendeten Lesegerätes ist auch eine inverse Darstellung möglich. Es ist auch möglich, den Code farbig zu drucken. Allerdings muss darauf geachtet werden, dass der Code als Halbtonbild bzw. als Strichbild gesehen einen gleichmäßigen Kontrast aufweist. Vermehrt wird der QR-Code auch bei der Direktmarkierung auf Produkten angebracht. Sie werden zum Beispiel mit einem Laser direkt auf der Oberfläche des zu kennzeichnenden Materials eingebrannt. Diese QR-Codes können sehr klein sein und sind sehr haltbar.
In der Darstellungsgröße ist dem QR-Code keine Grenze gesetzt, solange das Lesegerät das Bild formatfüllend und differenziert aufnehmen kann. Es wurden schon Plakatwände und ganze Häuserfassaden mit einem einzigen QR-Code versehen.
Lesen von Codes Das Lesen von QR-Codes besteht aus zwei Schritten:
Erzeugen eines digitalen Bildes der QR-codierten Daten, z. B. mit Hilfe einer Digitalkamera. Umwandeln der im Bild enthaltenen codierten Daten in Textform (Dekodieren).
Mobiltelefone Viele Mobiltelefone und ähnliche Geräte haben eingebaute Kameras. Damit und mit geeigneter Software aus einem App-Store kann man QR-Codes dekodieren und gegebenenfalls interpretieren, z. B. automatisch auf eine Webseite springen. Der als Mobile-Tagging bezeichnete Prozess ist in Japan äußerst populär. Er verbreitet sich seit 2007 auch in Europa.
mini|hochkant=1.7 mini|Dekodierung einer URL mit einem Smartphone
Verbreitet ist die kodierte Abbildung einer Webadresse, verwendet in Zeitschriften, Informationsblättern oder großformatig auf Werbeplakaten. Der Vorteil dieser Methode ist, dass das mühsame Abtippen entfällt. Neben URLs enthalten QR-Codes in der Praxis beispielsweise Telefonnummern, Adressen, informierende Texte, Premium-SMS, vCards, WLAN-Zugangsdaten oder Geodaten.
Der erste QR-Code in Deutschland wurde am 16. Oktober 2007 von Spex – Magazin für Popkultur auf der Titelseite veröffentlicht. Die Überschrift „Was sagt uns dieser Code?“ eröffnet einen Artikel, der sich mit dem Trend der 2D-Codes und deren Funktionsweise befasst. Der Autor bezeichnet den Code als Zeichen unserer Zeit, da der QR-Code sowohl von der Modebranche als auch der Musik- und Videoindustrie verwendet wird.
Am 9. November 2007 führte Die Welt Kompakt als erste gedruckte Zeitung QR-Codes ein. Mittlerweile kann man den QR-Code in vielen anderen Zeitungen und Zeitschriften sehen.
Mit dem Erscheinen von iOS 11 im Jahr 2017 fügte Apple eine native QR-Lesefunktion in die auf allen iPhones und iPads vorinstallierte Kamera-Applikation ein.
Scanner „Scanner“ ist analog zu Strichcodelesern der gebräuchliche Begriff für die Lesegeräte. Branchenüblich ist auch der Begriff „Imager“, wenn es sich um ein 2D-Gerät handelt. Sie verfügen über eine Kamera und einen Decoder. Zusätzlich bieten viele Geräte eine Zielhilfe, häufig in Form eines lasergenerierten Musters, das das Lesefeld anzeigt.
Spezielle Lesegeräte sind in der Lage, auch QR-Codes zu lesen, die im Direct-Marking-Verfahren mit einem Laser direkt auf das Material gebrannt wurden. Sie verfügen über eine hochauflösende Kamera und ein Makro-Objektiv sowie spezielle Algorithmen zum Eliminieren verfahrenstypischer Darstellungsfehler.
Software Wenn ein digitales QR-Bild bereits vorliegt, dann benötigt man noch eine Software, die das Bild analysiert und in einen Text umwandelt (dekodiert). Dafür gibt es z. B. Online-QR-Code-Dekodierer.
Generieren von Codes Um einen QR-Code zu generieren, braucht man: den Text, der codiert werden soll den gewünschten Grad der Fehlerkorrektur
Der grobe Ablauf ist dann: Anhand der Länge des Textes und des Grades der Fehlerkorrektur bestimmt man, wie groß der QR-Code sein muss. Man beginnt mit einer weißen Fläche, auf der nach und nach alle Elemente des QR-Codes dargestellt werden. Die Erkennungsmuster, die nicht vom Text abhängen, werden zuerst auf die Fläche gebracht. Das sind die Positionsmuster, die Ausrichtungsmuster und die Synchronisationslinien. Aus dem Text wird eine Bitfolge generiert. Zur Text-Bitfolge wird eine weitere Bitfolge für die Fehlerkorrektur generiert. Die Text-Bitfolge wird zusammen mit der Fehlerkorrektur-Bitfolge dort in das Symbol gezeichnet, wo noch Platz ist. Das geschieht von rechts nach links in Schlangenlinien. Um zu erreichen, dass das Symbol ungefähr gleich viele schwarze und weiße Pixel enthält, und um Muster zu vermeiden, die das Einlesen erschweren, werden nacheinander acht verschiedene Masken über das Symbol gelegt. Die Maske, die das beste Ergebnis liefert, wird beibehalten. Zum Schluss wird die Kennnummer der verwendeten Maske in das Symbol gezeichnet.