Voici un petit comparatif tout à fait impartial entre deux solutions populaires de code-barre 2D : le Datamatrix et le QR code. Il y a une bonne vingtaine de codes 2D, donc si l’on garde ceux aux spécifications libres et (donc?) ceux populaires, il reste ces deux-là.
Petit rappel : le principal avantage du code 2D par rapport au code (à) barres est la quantité d’information qu’il peut contenir. Ce dernier étant plus gros à imprimer, ne peut contenir que 13 chiffres généralement, contre plus de 3000 pour les codes 2D.
QR code
Conçu en 1994 par la société japonaise Denso-Wave, le QR code a été libéré en 1999, mais reste toujours la propriété de Denso-Wave. C’est depuis une norme ISO. Ce code a la particularité de mieux encoder les caractères japonais, ce qui explique qu’il a été popularisé d’abord au Japon.
On le reconnait facilement à ses trois gros carrés bordants les côtés gauche et haut, et au petit carré dans le coin inférieur droit, qui lui donne un aspect déséquilibré et disgracieux.
Par ailleurs, ces carrés, qui prennent beaucoup de place par rapport à la zone de donnée, est sensé améliorer la réactivité du décodage (QR veut dire Quick Response).
Cependant, aucun chiffre significatif n’a pu démontrer que le QR code était le plus rapide à décoder, sachant que le temps de réponse dépend très largement de l’algorithme utilisé.
Datamatrix
Le code Datamatrix a été conçu en 1989. Il a été standardisé de nombreuses industries — en particulier électroniques, automobiles et pharmaceutiques — et par la NASA. Il a également été normalisé ISO (IEC 16022). Le Datamatrix est librement utilisable par tous et tous les usages, car il est dans le domaine public (il n’appartient à aucune entité particulière).
La zone de contrôle est répartie en deux zones : la première qui définit la taille du code, est en forme de L, et la deuxième qui défini la densité du code (le nombre de pixels) sur la partie haute et droite.
On peut constater que la zone de donnée est nettement plus grande que sur le QR code. Conséquence logique : pour une même taille de code, les modules sont plus sur le Datamatrix, donc plus lisible.
Cette répartition des différentes zones — de contrôle et de donnée — est beaucoup plus logique, harmonieuse et agréable à regarder.
Attention ! De méchants formats peuvent se cacher derrière un Datamatrix ! Par exemple, le franco-français Flashball Flashcode utilise la norme Datamatrix pour en faire un code propriétaire fermé. L’information décodée (un simple identifiant unique) est alors envoyée sur un serveur centralisé pour y récupérer la véritable l’information demandée. Un Datamatrix standard n’a pas besoin de connexion internet pour décoder ses données.
Conclusion
Les deux codes ont des spécifications ouvertes, ce qui fait qu’ils sont tous les deux lisibles par la majorités des applications mobiles.
Ils ont également un niveau de redondance paramétrable, ce qui permet une grande robustesse en cas de dégradation (salissures, vandalisme…) et ce jusqu’à 30%. Le code ci-contre, dégradé par de vilains sympathisants anonymes, est toutefois toujours lisible (mais c’était limite quand-même).
Concernant la taille, l’avantage revient au Datamatrix. La taille minimum d’un QR code est de 21×21 pixels, contre 10×10 pour le Datamatrix, soit 77% plus petit. Pour des chaines standards (URL), le Datamatrix est entre 30% à 60%¹ plus performant. Toutefois, la tendance s’inverse avec l’utilisation de caractères japonais.
Si vous n’êtes toujours pas convaincus de la supériorité du Datamatrix sur le QR code, il nous reste les derniers arguments chocs.
¹ Rapports de taille généralement constatés
Derniers arguments chocs
Bon, maintenant vous savez quoi utiliser, faites votre choix —> c’est par ici par exemple.
Sources :http://qrworld.wordpress.com/2011/09/26/qr-codes-versus-data-matrix/
http://www.benjaminbaudouin.com/data-matrix-et-qr-code-quelles-differences/
Semacode – Technical White Paper (PDF)
Le code DataMatrix (PDF)
le datamatrix est parait il plus sur, mais le qr peut contenir un plus grand nombre de caractères
La phrase « le franco-français Flashball Flashcode utilise la norme Datamatrix pour en faire un code propriétaire fermé. » est digne du journal detective: il ne faut pas confondre une norme de codage et ce qu’on y code. Qu’on y mette du texte, une URL ou un simple ID c’est autre chose. Un ID c’est tout à fait légitime. Article excellent sinon. Merci.