2.1 Direct Binary Search (DBS)
Outline Overview of search-based halftoning methods DBS framework DBS behavior Efficient implementation for DBS Dual interpretation for DBS Optimal parameter choices
Overview of Search-Based Methods Search-based methods use numerical optimization strategies to find the best halftone image. These methods are usually iterative. They can be used to design: Constant gray-value texture patches LUT texture stacks Macroscreens Optimal halftone images Search methods include: Linear programming Simulated annealing Gerchberg-Saxton iteration Direct binary search (DBS)
DBS Framework [Analoui and Allebach, 1992]* *Similar algorithms reported at same time by Pappas and Neuhoff and Mulligan
The Search Heuristic
DBS Convergence: 0, 1, 2, 4, 6, and 8 Iterations
Swaps vs. Toggles Toggle only Swap and toggle
Device model (linear, shift-invariant) Image rendered on print or display Digital image used to drive printer or display Display/printer spot profile Printer addressable resolution Assumes spot overlap is additive if there is any overlap Assume identical model for continuous-tone image Example: ideal printer with no spot overlap
HVS model and error image
Impact of viewing geometry on spatial frequencies Both arrows A and B generate same retinal image For small ratio , the angle subtended at the retina in radians is
Spatial frequency conversion To convert between (cycles/inch) viewed at distance (inches) and (cycles/degree) subtended at the retina, we thus have For a viewing distance of 12 inches, this becomes
Spatial frequency filtering stage Based on pyschophysical measurements of contrast sensitivity function Use sinusoidal stimuli with modulation along achromatic, red-green, or blue-yellow axes For any fixed spatial frequency, threshold of visibility is depends only on . This is Weber’s Law.
Campbell’s contrast sensivity function on log-log axes
Dependence of sine wave visibility on contrast and spatial frequency
Models for achromatic spatial contrast sensitivty* Author Contrast sensitivity function Constants Campbell 1969 Mannos 1974 Nasanen 1984 Daly 1987 *Kim and Allebach, IEEE T-IP, March 2002
Achromatic spatial contrast sensitivity curves
Error metric
Impact of scale parameter S = RD ; R = resolution in dpi, D=viewing distance in inches. Role in DBS S1=0.5S2 S2=300x9.5 S3=2.0S2
Efficient computation Direct computation of effect of a trial change requires operations for filter containing pixels.
Efficient evaluation of trial changes Change in digital halftone Coefficients Change in mean-squared error correlation functions
Update required for accepted change Computation is , but updates occur much less often than trial changes.
Dual interpretation of DBS [Lieberman and Allebach, 1999] Consider toggle from to . Recall: In this case, , and . Change in correlation
Summary of results Toggle from to Condition for acceptance Change in correlation Toggle from to
Statistics for
What is ? Can show that For Nasanen’s HVS model
Summary of dual interpretation Minimize mean-squared error at distance Minimize maximum error at distance
Illustration of Dual Interpretation f[m] f[m]*p[m] f[m]*cpp[m] ~ ~~ g[m] g[m]*p[m] g[m]*cpp[m] ~ ~~
Tone reproduction with DBS
The impact of filter size on halftone comparisons set1
Set 1 Swap only Swap neighborhood: 161x161, Block size: 5x4 Pattern size: 256x256 Scale factor: 2000 Radius: 4 pixels Filter size: (4x4+1)=17 Scale factor: 2000 Radius: 6 pixels Filter size: (6x4+1)=25 Scale factor: 2000 Radius: 13 pixels Filter size: (13x4+1)=53 Based on this result, for scale factor 2000, radius of 13 pixels is the best, it covers 99% of the area. Each pixel is represented by 3x3 pixels.
Set 1 log-magnitude of power spectra ✓ K=7 K=7 K=7 Scale factor: 2000 Radius: 4 pixels Filter size: (4x4+1)=17 Scale factor: 2000 Radius: 6 pixels Filter size: (6x4+1)=25 Scale factor: 2000 Radius: 13 pixels Filter size: (13x4+1)=53
Set 1 RAPS ✓ Scale factor: 2000 Radius: 4 pixels Filter size: (4x4+1)=17 Scale factor: 2000 Radius: 6 pixels Filter size: (6x4+1)=25 Scale factor: 2000 Radius: 13 pixels Filter size: (13x4+1)=53 ✓
The impact of scale factor on halftone comparisons set2
Set 2 ✓ Scale factor: 2000 Radius: 13 pixels Filter size: (13x4+1)=53
Set 2 log-magnitude of power spectra Scale factor: 3000 K=7 Scale factor: 2000 K=7 Scale factor: 2500 K=7 Scale factor: 3500 K=7 Scale factor: 4000 K=7 Scale factor: 4500 K=7
Set 2 RAPS Scale factor: 2000 Radius: 13 pixels Filter size: (13x4+1)=53 Scale factor: 2500 Radius: 17 pixels Filter size: (17x4+1)=69 Scale factor: 3000 Radius: 20 pixels Filter size: (20x4+1)=81
Set 2 RAPS ✓ Scale factor: 3500 Radius: 23 pixels Filter size: (23x4+1)=93 ✓ Scale factor: 4000 Radius: 27 pixels Filter size: (27x4+1)=109 Scale factor: 4500 Radius: 30 pixels Filter size: (30x4+1)=121
Comparisons of swap neighborhood Pattern size: 512x512 best - 106 to 106 - 116 to 116 - 255 to 255 Swap only We increase the pattern size so that we can swap in larger neighborhoods.
Comparisons of swap neighborhood log-magnitude of power spectra -106 to 106 K=15 -116 to 116 K=15 -255 to 255 K=15
Comparisons of swap neighborhood RAPS - 106 to 106 - 116 to 116 - 255 to 255 ✓