2014-07-26 9 views
5

Ich muss QR Code-generierende Bibliotheken auswerten und vergleichen und nach logischen Parametern suchen, um die Ausgabe zu messen und zu vergleichen.Wie bewerte ich die Qualität/Richtigkeit eines QR-Codes? (Wie bekomme ich quantitative und qualitative QR-Code-Eigenschaften)

Warum brauche ich das? Es scheint, dass, wenn ich zwei verschiedenen QR-Generatoren die gleiche Eingabe gebe, unterschiedliche Ausgabe erzeugt zu werden scheint, und ich als ein Mensch kann nicht sagen, welches ist richtig.

Mit richtig meine ich, wie viel "QR" -Daten von meinem Eingang codiert/dargestellt werden, oder von billigen Handys (größere Blöcke) gelesen werden können.

Dies gilt insbesondere mit mit binären Daten handeln, wobei jedes Byte zwischen 0x7F ist (127 dezimal) oder A0 (160 dezimal), und gelegentlich, wenn sie mit Werten von 0 bis 0x20 (32 dezimal) handelt

Die oben genannten problematischen Bereiche korrelieren zufällig auch mit ungültigen oder nicht druckbaren Zeichen des ISO IEC 8859 1-Zeichensatzes. Daher ist es möglich, dass die Bibliothek meine Eingabe als eine Zeichenfolge liest oder sie als 2-Byte-UTF-Codierung codiert. 16 Zeichen oder wer weiß!

Wenn jemand Details darüber hat, welche Aspekte eines QR-Codes ich betrachten sollte, oder noch besser, eine App, die die Diagnosedaten eines QR-Codes anzeigt, wäre das perfekt.

+1

Es gibt viele verschiedene gültigen Codierungen von genau den gleichen Eingang. Ein Encoder kann in einigen Fällen verschiedene Modi oder unterschiedliche Maskenmuster auswählen. Manche sind manchmal optimaler als andere, aber alle sind potentiell korrekt. Ich denke, dass Sie sicherstellen möchten, dass ein Encoder/Decoder genau den Eingang in einer Runde zurückgibt, und wählen Sie einen, der auf alle Ihre Eingabe funktioniert. –

Antwort

1

würde ich einen Dienst wie ZXing verwenden - http://zxing.org/w/decode.jspx

Sie können einen Code QR füttern - entweder per Upload oder zeigt auf eine URL.

Es gibt Ihnen einige Diagnoseinformationen, einschließlich der rohen Bytes, die

Raw bytes 

44 76 d6 16 96 c7 46 f3 a7 26 56 36 97 06 96 56 
e7 44 06 57 86 16 d7 06 c6 52 e6 36 f6 d3 f6 36 
33 d6 f7 46 86 57 24 06 57 86 16 d7 06 c6 52 e6 
36 f6 d2 67 37 56 26 a6 56 37 43 d6 86 56 c6 c6 
f2 66 26 f6 47 93 d7 96 f0 ec 11 ec 

Wenn Sie lieber nicht eine zufällige Website vertrauen, es ist Open Source so können Sie es lokal ausführen codiert wurden.

4

QR-Decoder mit mehr Debug-Ausgabe dann ZXing ist http://qrlogo.kaarposoft.dk/qrdecode.html

Nach den Autor, verwendet die Software reine JavaScript ist, so läuft es in Ihrem eigenen Browser.

Ein Beispiel QR Code dekodieren mit Debug-Ausgabe ermöglichen (PNG von http://www.qrcode-monkey.de/ codiert wurde):

left=2 right=22 top=2 bottom=22 
size=21 
matchVersion version=1 finder0=64 finder1=64 finder2=64 
matchVersion version=1 timing0=1 timing1=1 alignment=1 
matchVersion version=1 format_NW =9 0 format_NESW =9 1 format = 9 ecl = 1 mask = 1 
matchVersion version=1 grades(F(V)TAF): 4444->4 
findModuleSize version=1 grade=4 error_correction_level=1 mask=1 
getCodewords mask=1 length=26 
getCodewords = 64,55,70,86,194,0,216,32,80,246,228,98,160,0,236,17,236,17,236,237,167,185,237,199,28,244 
setBlocks n_blocks_first=1 n_blocks_second=0 n_blocks=1 n_block_words_first=19 n_block_words_second=0 n_block_ec_words=7 total=26 
setBlocks block 0 (26): 0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25 
RS calculateSyndroms: No errors 
correctErrors in = 64,55,70,86,194,0,216,32,80,246,228,98,160,0,236,17,236,17,236,237,167,185,237,199,28,244 
correctErrors out = 64,55,70,86,194,0,216,32,80,246,228,98,160,0,236,17,236,17,236 
error_grade=4 
extractData bytes in (19) = 64,55,70,86,194,0,216,32,80,246,228,98,160,0,236,17,236,17,236 
extractData mode = 4 
extract charcount = 3 
extractData mode = 2 
extractAlphanum charcount = 1 
extractData mode = 1 
extractNumeric charcount = 10 
extractData mode = 0 
extractData data(14) = 116,101,108,58,49,50,51,52,53,54,55,56,57,48 

Hinweis: Die Daten eingebettet ist tel:1234567890