an optimization model for aesthetic two dimensional barcodeschangec/publications/2014... ·...
TRANSCRIPT
![Page 1: An Optimization Model for Aesthetic Two Dimensional Barcodeschangec/publications/2014... · 2014-01-27 · Aesthetic Barcodes •2D barcodes visually resemble random dots. We want](https://reader034.vdocuments.site/reader034/viewer/2022042323/5f0d2dce7e708231d4390f56/html5/thumbnails/1.jpg)
An Optimization Model for Aesthetic Two‐Dimensional
BarcodesFang Chengfang, Zhang Chunwang, Ee‐Chien Chang
School of ComputingNational University of Singapore
![Page 2: An Optimization Model for Aesthetic Two Dimensional Barcodeschangec/publications/2014... · 2014-01-27 · Aesthetic Barcodes •2D barcodes visually resemble random dots. We want](https://reader034.vdocuments.site/reader034/viewer/2022042323/5f0d2dce7e708231d4390f56/html5/thumbnails/2.jpg)
1. Motivations
![Page 3: An Optimization Model for Aesthetic Two Dimensional Barcodeschangec/publications/2014... · 2014-01-27 · Aesthetic Barcodes •2D barcodes visually resemble random dots. We want](https://reader034.vdocuments.site/reader034/viewer/2022042323/5f0d2dce7e708231d4390f56/html5/thumbnails/3.jpg)
Aesthetic Barcodes
• 2D barcodes visually resemble random dots. We want to make them visually interesting to encourage usages, and/or to piggyback visual information on the QR code.
• Examples of manually designed barcodes.From 15 Beautiful and Creative QR Codes. ( http://mashable.com/2011/07/23/creative‐qr‐codes/ )
9‐Jan‐14
![Page 4: An Optimization Model for Aesthetic Two Dimensional Barcodeschangec/publications/2014... · 2014-01-27 · Aesthetic Barcodes •2D barcodes visually resemble random dots. We want](https://reader034.vdocuments.site/reader034/viewer/2022042323/5f0d2dce7e708231d4390f56/html5/thumbnails/4.jpg)
Automated Generation
9‐Jan‐14
• Given a message and an image, automatically generates the aesthetic barcode.
• Manually designed barcodes are expensive.
• Able to readily or interactively generate barcodes that carrying different messages.
![Page 5: An Optimization Model for Aesthetic Two Dimensional Barcodeschangec/publications/2014... · 2014-01-27 · Aesthetic Barcodes •2D barcodes visually resemble random dots. We want](https://reader034.vdocuments.site/reader034/viewer/2022042323/5f0d2dce7e708231d4390f56/html5/thumbnails/5.jpg)
Existing automated method
9‐Jan‐14
from http://graphics.csie.ntu.edu.tw/~forestking/research/PG13‐QRCode/
Zachi et alVisually Significant QR codes: Imageblending and statistical analysis
Message: hhtp://www.united.com
![Page 6: An Optimization Model for Aesthetic Two Dimensional Barcodeschangec/publications/2014... · 2014-01-27 · Aesthetic Barcodes •2D barcodes visually resemble random dots. We want](https://reader034.vdocuments.site/reader034/viewer/2022042323/5f0d2dce7e708231d4390f56/html5/thumbnails/6.jpg)
9‐Jan‐14
Using “half‐toning”
Chengfang Fang and Ee‐Chien Chang, Securing Interactive Sessions Using Mobile Device through Visual Channel and Visual Inspection, Annual Computer Security Applications Conference (ACSAC), 2010.
![Page 7: An Optimization Model for Aesthetic Two Dimensional Barcodeschangec/publications/2014... · 2014-01-27 · Aesthetic Barcodes •2D barcodes visually resemble random dots. We want](https://reader034.vdocuments.site/reader034/viewer/2022042323/5f0d2dce7e708231d4390f56/html5/thumbnails/7.jpg)
Commercial systems
9‐Jan‐14
(image created using the generator in www.visualead.com )
Message:http://VQR.MX/fxm5
(image obtained from http://qrartist.net/qrartist‐product)
Message:http://mupri.me/FNJSQ
Visualeadhttp://www.visualead.com/ QRArtistic
http://qrartist.net/
![Page 8: An Optimization Model for Aesthetic Two Dimensional Barcodeschangec/publications/2014... · 2014-01-27 · Aesthetic Barcodes •2D barcodes visually resemble random dots. We want](https://reader034.vdocuments.site/reader034/viewer/2022042323/5f0d2dce7e708231d4390f56/html5/thumbnails/8.jpg)
Examples of our barcodes
9‐Jan‐14
Message:http://www.comp.NUs.EDU.sg/~cHAnGEc/#12345678901234567890 Message:
http://www.comp.NUS.edU.SG/~cHAnGec/#12345678901234567890
![Page 9: An Optimization Model for Aesthetic Two Dimensional Barcodeschangec/publications/2014... · 2014-01-27 · Aesthetic Barcodes •2D barcodes visually resemble random dots. We want](https://reader034.vdocuments.site/reader034/viewer/2022042323/5f0d2dce7e708231d4390f56/html5/thumbnails/9.jpg)
2. Problem Formulation
![Page 10: An Optimization Model for Aesthetic Two Dimensional Barcodeschangec/publications/2014... · 2014-01-27 · Aesthetic Barcodes •2D barcodes visually resemble random dots. We want](https://reader034.vdocuments.site/reader034/viewer/2022042323/5f0d2dce7e708231d4390f56/html5/thumbnails/10.jpg)
Proposed Model
9‐Jan‐14
message m
logo image L
barcode A
noise
noisy A’
BarcodeReader
Visual inspection
mEmbedder
Given a Barcode Reader, we want to design an embedder that maximizes the visual similarity between A and L, and yet m can be correctly decoded with high probability.
The Barcode Reader is given and cannot be modified.
![Page 11: An Optimization Model for Aesthetic Two Dimensional Barcodeschangec/publications/2014... · 2014-01-27 · Aesthetic Barcodes •2D barcodes visually resemble random dots. We want](https://reader034.vdocuments.site/reader034/viewer/2022042323/5f0d2dce7e708231d4390f56/html5/thumbnails/11.jpg)
Here, the decoder can be modified by us.(i.e. we want to design an encoder and decoder that maximizes visual similarity, and yet m can be correctly decoded with high probability.)
9‐Jan‐14
message m
host J
watermarkedimage
A
noise
noisy A’
Decoder
Visual inspection
mEncoder
Digital Watermarking
![Page 12: An Optimization Model for Aesthetic Two Dimensional Barcodeschangec/publications/2014... · 2014-01-27 · Aesthetic Barcodes •2D barcodes visually resemble random dots. We want](https://reader034.vdocuments.site/reader034/viewer/2022042323/5f0d2dce7e708231d4390f56/html5/thumbnails/12.jpg)
Main components in proposed model
• Visual similarity.Dw(A,L): Qualities the visual distance between the given image L and the barcode A, where w is a weight function that can be derived from J or specified by the user.
• Successful decoding of the message.F(A,m): Estimate the expected additional bit‐error incurred by the barcode A compare to the “default” barcode in encoding the message m.
9‐Jan‐14
![Page 13: An Optimization Model for Aesthetic Two Dimensional Barcodeschangec/publications/2014... · 2014-01-27 · Aesthetic Barcodes •2D barcodes visually resemble random dots. We want](https://reader034.vdocuments.site/reader034/viewer/2022042323/5f0d2dce7e708231d4390f56/html5/thumbnails/13.jpg)
2.1. Problem Formulation:Visual Distance function
![Page 14: An Optimization Model for Aesthetic Two Dimensional Barcodeschangec/publications/2014... · 2014-01-27 · Aesthetic Barcodes •2D barcodes visually resemble random dots. We want](https://reader034.vdocuments.site/reader034/viewer/2022042323/5f0d2dce7e708231d4390f56/html5/thumbnails/14.jpg)
Visual distance function Dw (A,L)
• In this paper, we adopt weighted Euclidean distance.
Dw (A,L) = ∑i wi( ai – l i )2
Our solution can handle other quadratic functions. For e.g. letting the user to specific the weight of edges in L.
D’w (A, L) = ∑i wi {edge(A,i) – edge(L,i) }2where edge(A,i) is a linear combination of the pixel values surrounding the i‐th pixel.
9‐Jan‐14
![Page 15: An Optimization Model for Aesthetic Two Dimensional Barcodeschangec/publications/2014... · 2014-01-27 · Aesthetic Barcodes •2D barcodes visually resemble random dots. We want](https://reader034.vdocuments.site/reader034/viewer/2022042323/5f0d2dce7e708231d4390f56/html5/thumbnails/15.jpg)
• The weight function can be manually specified, derived from salient features, or a combination of both.
9‐Jan‐14
![Page 16: An Optimization Model for Aesthetic Two Dimensional Barcodeschangec/publications/2014... · 2014-01-27 · Aesthetic Barcodes •2D barcodes visually resemble random dots. We want](https://reader034.vdocuments.site/reader034/viewer/2022042323/5f0d2dce7e708231d4390f56/html5/thumbnails/16.jpg)
2.2. Problem Formulation:Expected error
![Page 17: An Optimization Model for Aesthetic Two Dimensional Barcodeschangec/publications/2014... · 2014-01-27 · Aesthetic Barcodes •2D barcodes visually resemble random dots. We want](https://reader034.vdocuments.site/reader034/viewer/2022042323/5f0d2dce7e708231d4390f56/html5/thumbnails/17.jpg)
Estimating the expected error
• We investigate the process carried out by a typical barcode reader.
• Note that a barcode is composed by a grid of square “modules”. Each module consists of a number of pixels in the digitized image.
9‐Jan‐14
![Page 18: An Optimization Model for Aesthetic Two Dimensional Barcodeschangec/publications/2014... · 2014-01-27 · Aesthetic Barcodes •2D barcodes visually resemble random dots. We want](https://reader034.vdocuments.site/reader034/viewer/2022042323/5f0d2dce7e708231d4390f56/html5/thumbnails/18.jpg)
Steps carried out by a typical reader
9‐Jan‐14
Step 2:Sampling
s1, s2, ..., s36
Step 3:threshold to 0,1
b1,b2,..., b36
Error correction
message m
![Page 19: An Optimization Model for Aesthetic Two Dimensional Barcodeschangec/publications/2014... · 2014-01-27 · Aesthetic Barcodes •2D barcodes visually resemble random dots. We want](https://reader034.vdocuments.site/reader034/viewer/2022042323/5f0d2dce7e708231d4390f56/html5/thumbnails/19.jpg)
Steps carried out by a typical reader
• Step 1:Captures the barcode as an image. Perform synchronisation (i.e. geometricalignment).
• Step 2:Using a sampling function (i.e. weighted average) to obtain the intensity ofeach module
s = s1,s2,…,sn
• Step 3:Threshold to a bits sequence, where each bit correspond to one module
b = b1,b2,…,bn
• Step 4:Apply error correction code to decode the message m from b.
9‐Jan‐14
![Page 20: An Optimization Model for Aesthetic Two Dimensional Barcodeschangec/publications/2014... · 2014-01-27 · Aesthetic Barcodes •2D barcodes visually resemble random dots. We want](https://reader034.vdocuments.site/reader034/viewer/2022042323/5f0d2dce7e708231d4390f56/html5/thumbnails/20.jpg)
Step 2, sampling function
• Typical reader use a sampling function (i.e.weighted average) to obtain the intensity of amodule.
• Examples of sampling functions: Gaussian‐like2D function, or average of a few pixelssurrounding the center.
9‐Jan‐14
![Page 21: An Optimization Model for Aesthetic Two Dimensional Barcodeschangec/publications/2014... · 2014-01-27 · Aesthetic Barcodes •2D barcodes visually resemble random dots. We want](https://reader034.vdocuments.site/reader034/viewer/2022042323/5f0d2dce7e708231d4390f56/html5/thumbnails/21.jpg)
• For each i‐th module in the barcode A, we mapsthe sampled real value si to an estimatedprobability that the corresponding bit would be“thresholded” to the wrong bit value. In currentimplementation, they are mapped to either 0.5,0, or 1.
• Formulate F(A,m) to quality the expectednumber of bits in the sequence b (sampled fromA) that are wrongly read.
9‐Jan‐14
![Page 22: An Optimization Model for Aesthetic Two Dimensional Barcodeschangec/publications/2014... · 2014-01-27 · Aesthetic Barcodes •2D barcodes visually resemble random dots. We want](https://reader034.vdocuments.site/reader034/viewer/2022042323/5f0d2dce7e708231d4390f56/html5/thumbnails/22.jpg)
3.1. Problem Formulation:Optimization
![Page 23: An Optimization Model for Aesthetic Two Dimensional Barcodeschangec/publications/2014... · 2014-01-27 · Aesthetic Barcodes •2D barcodes visually resemble random dots. We want](https://reader034.vdocuments.site/reader034/viewer/2022042323/5f0d2dce7e708231d4390f56/html5/thumbnails/23.jpg)
Optimization problem
Given a message m, a logo image L and a weight function w and a threshold e, find a barcode A that minimizes
Dw(A, L) subjected to the constrain
F(A, m) < e.
9‐Jan‐14
![Page 24: An Optimization Model for Aesthetic Two Dimensional Barcodeschangec/publications/2014... · 2014-01-27 · Aesthetic Barcodes •2D barcodes visually resemble random dots. We want](https://reader034.vdocuments.site/reader034/viewer/2022042323/5f0d2dce7e708231d4390f56/html5/thumbnails/24.jpg)
III. Solving the optimization problem
![Page 25: An Optimization Model for Aesthetic Two Dimensional Barcodeschangec/publications/2014... · 2014-01-27 · Aesthetic Barcodes •2D barcodes visually resemble random dots. We want](https://reader034.vdocuments.site/reader034/viewer/2022042323/5f0d2dce7e708231d4390f56/html5/thumbnails/25.jpg)
Two phases.
Phase 1:Find the intended intensity for each module that minimize visual distance, and yet the expected error is lower than the threshold. (Dynamic Programming)
Phase 2:For each module, find the sub‐image that minimizes the visual distance, and yet its sampled intensity is as determined in phase 1. (Least square‐fit for weighted Euclidean distance, or Quadratic Programming for general quadratic function.)
9‐Jan‐14
![Page 26: An Optimization Model for Aesthetic Two Dimensional Barcodeschangec/publications/2014... · 2014-01-27 · Aesthetic Barcodes •2D barcodes visually resemble random dots. We want](https://reader034.vdocuments.site/reader034/viewer/2022042323/5f0d2dce7e708231d4390f56/html5/thumbnails/26.jpg)
III. Applying to QR Code
![Page 27: An Optimization Model for Aesthetic Two Dimensional Barcodeschangec/publications/2014... · 2014-01-27 · Aesthetic Barcodes •2D barcodes visually resemble random dots. We want](https://reader034.vdocuments.site/reader034/viewer/2022042323/5f0d2dce7e708231d4390f56/html5/thumbnails/27.jpg)
• Higher visual weight on “control points”.
• Exploit the error correction structure of QR code.
• Exploit error correction in the application layer. (For e.g. URL is case‐insensitive. We search for the combination of capitalisationthe minimize the visual distance. )
9‐Jan‐14
![Page 28: An Optimization Model for Aesthetic Two Dimensional Barcodeschangec/publications/2014... · 2014-01-27 · Aesthetic Barcodes •2D barcodes visually resemble random dots. We want](https://reader034.vdocuments.site/reader034/viewer/2022042323/5f0d2dce7e708231d4390f56/html5/thumbnails/28.jpg)
IV. Experiments and Analysis
![Page 29: An Optimization Model for Aesthetic Two Dimensional Barcodeschangec/publications/2014... · 2014-01-27 · Aesthetic Barcodes •2D barcodes visually resemble random dots. We want](https://reader034.vdocuments.site/reader034/viewer/2022042323/5f0d2dce7e708231d4390f56/html5/thumbnails/29.jpg)
Experiment setup
• On Toy Barcode, a simple barcode design.
• On QR code, using the reader “QR Barcode Scanner” on Andriod phone, Android tablet, and “QR Code Scanner” on iPhone and iPad, with the barcodes rendered on LCD monitor and printed in hardcopies (laser printer).
• Please refer to the paper for detailed results on robustness.
9‐Jan‐14
![Page 30: An Optimization Model for Aesthetic Two Dimensional Barcodeschangec/publications/2014... · 2014-01-27 · Aesthetic Barcodes •2D barcodes visually resemble random dots. We want](https://reader034.vdocuments.site/reader034/viewer/2022042323/5f0d2dce7e708231d4390f56/html5/thumbnails/30.jpg)
Inspecting the generated barcode
9‐Jan‐14
![Page 31: An Optimization Model for Aesthetic Two Dimensional Barcodeschangec/publications/2014... · 2014-01-27 · Aesthetic Barcodes •2D barcodes visually resemble random dots. We want](https://reader034.vdocuments.site/reader034/viewer/2022042323/5f0d2dce7e708231d4390f56/html5/thumbnails/31.jpg)
9‐Jan‐14
![Page 32: An Optimization Model for Aesthetic Two Dimensional Barcodeschangec/publications/2014... · 2014-01-27 · Aesthetic Barcodes •2D barcodes visually resemble random dots. We want](https://reader034.vdocuments.site/reader034/viewer/2022042323/5f0d2dce7e708231d4390f56/html5/thumbnails/32.jpg)
Different mappings of probability
9‐Jan‐14
p=20, t=5 t=15
p=20, t=25 t=45
![Page 33: An Optimization Model for Aesthetic Two Dimensional Barcodeschangec/publications/2014... · 2014-01-27 · Aesthetic Barcodes •2D barcodes visually resemble random dots. We want](https://reader034.vdocuments.site/reader034/viewer/2022042323/5f0d2dce7e708231d4390f56/html5/thumbnails/33.jpg)
IV. Conclusions
![Page 34: An Optimization Model for Aesthetic Two Dimensional Barcodeschangec/publications/2014... · 2014-01-27 · Aesthetic Barcodes •2D barcodes visually resemble random dots. We want](https://reader034.vdocuments.site/reader034/viewer/2022042323/5f0d2dce7e708231d4390f56/html5/thumbnails/34.jpg)
Conclusion
• We proposed a principled approach, and pointed out a key different from the well‐known watermarking model.
• By inspecting typical steps carried out by a typical barcode reader, we formulate the process as an optimization problem that can be efficiently solved using dynamic programming + quadratic programming.
• Adopted the techniques to the popular QR codes.
9‐Jan‐14