Come mai un logo non impedisce di leggere un QR code? Grazie agli ECC, scopriamoli!

I QR code permettono di ottenere velocemente poche informazioni. Anche se leggermente coperto, il codice è leggibile grazie agli ECC.

QR code su un palazzo giapponese. Fonte: wikimedia commons

I codici QR sono codici a barre bidimensionali che, nonostante fossero già ampiamente usati, stanno avendo un ruolo importante nella ristorazione ‘post lockdown’ come mezzo per distribuire menù digitali che non necessitano di igienizzazione e sicuri per i clienti.

Cosa si intende con ECC e EDC

ECC è un acronimo che sta per Error Correction Code. Con questa sigla si indicano in generale strategie matematiche che permettono di correggere errori in un messaggio. Grazie a questa tecnologia si riesce quindi a interpretare un messaggio che presenta difetti senza il bisogno di chiederne una seconda copia. Spesso ciò è possibile rendendo alcune informazioni ridondanti, ovvero inserendole più volte nello stesso messaggio. Una tecnologia che si associa spesso all’ECC è l’EDC, ovvero Error Detection Code. Questa tecnologia è diversa dall’ECC in quanto la sua implementazione non richiede troppo spazio. Ovviamente ciò al costo di non poter correggere gli errori, ma poter solamente individuarne la presenza in modo abbastanza rapido.

esempio di QR code che può essere letto correttamente nonostante la decorazione, fonte: wikimedia cmmons

Un esempio di EDC e i suoi ambiti di utilizzo

Per quanto riguarda gli EDC, uno dei più diffusi è l’algoritmo di Luhn. Esso viene implementato nei numeri delle carte di credito, nei codici a barre UPC-A, che sono utilizzati ad esempio nei supermercati, e altri codici monodimensionali. Questo algoritmo permette di controllare in loco se l’informazione inserita è corretta o meno. Questo riduce quindi il bisogno di cercarla in un database possibilmente enorme con perdite di tempo non necessarie. Esso è abbastanza semplice da implementare in quanto basta aggiungere una cifra in coda al codice da controllare. Mediante una serie particolare di somme fra le cifre del messaggio si può calcolare il valore di questa cifra. Quindi dal punto di vista del lettore del codice, la cifra calcolata può essere confrontata con quella letta, in modo tale da capire se ci sono stati errori. Nei codici a barre bidimensionali è possibile implementare un ECC grazie allo spazio che mettono a disposizione.

L’ECC dei QR code e altri ambiti di utilizzo della tecnologia

Nei QR code è implementato un ECC chiamato di Reed-Solomon, dal nome dei suoi sviluppatori. Questo metodo di correzione è abbastanza complesso ma permette maggiori libertà. Un codice che utilizza questo metodo di correzione degli errori può infatti essere usato anche in ambienti dove non è possibile assicurarne l’integrità. Inoltre grazie ad esso il codice stesso può essere reso più accattivante, ad esempio con l’aggiunta di un logo al suo interno, senza comprometterne la leggibilità. Ovviamente oltre che a prevenire danni per usura del mezzo di trasporto dell’informazione, gli ECC possono essere sfruttati nel caso sia complesso ricevere una copia del messaggio. Un esempio sono le prime missioni spaziali ai confini del sistema solare, in cui le rilevazioni potevano essere fatte solo una volta.

E tu che ne pensi? Faccelo sapere!

Questo sito usa Akismet per ridurre lo spam. Scopri come i tuoi dati vengono elaborati.

%d blogger hanno fatto clic su Mi Piace per questo: