470 likes | 869 Views
Application into Image Inpainting. Criminisi, A.; Perez, P.; Toyama, K., "Region filling and object removal by exemplar-based image inpainting," IEEE Trans. on Image Proc. , vol.13, no.9, pp. 1200- 1212, Sept. 2004. At the Intersection. Error Concealment, Image Recovery … ….
E N D
Application into Image Inpainting Criminisi, A.; Perez, P.; Toyama, K., "Region filling and object removal by exemplar-based image inpainting," IEEE Trans. onImage Proc., vol.13, no.9, pp. 1200- 1212, Sept. 2004
Heuristic Rules Geometric cue: Convexity Photometric cue: gradient Green/red color: high (low) priority pixels
Image Inpainting Specific Scanning order Repair by Nonparametric sampling Repaired image Image to repaired
Synthetic Image Example Initial Intermediate Final Kanisza Triangle
Computer Assignment 5 • Implement Efros-Leung’s scheme • Test it on image inpainting (you might want to try different textures) • When does it work and when does it fail? • Computational complexity reduction
Open Questions • Where to inpaint? • Sequential vs. parallel inpainting • Performance evaluation • Seeing is not always believing • Failure examples • Few researchers report them • Comparison with other approaches • Why does A work better than B?
Error Concealment in Image Communication image video Sequential Parallel
Why Parallel? • Avoid choosing scanning order and its associated error propagation problem • Modeling multimedia signal at a patch (e.g., speech frame, image block) level instead of data (e.g., speech sample, image pixel) level • Parallelism has to work with distributed processing together (redundancy is exploited to fight against uncertainty)
RPP B1 B3 B2 B0 B4 Why Nonlocal? Local neighbors in range (photometric similarity) nonlocal patches in domain (geometric proximity)
Algorithm Flowchart Projection onto observation constraint Projection onto prior constraint Data clustering in Rp Coring algorithm Outer loop Inner loop Better estimate of local neighborhood in the patch space Better estimate of missing data in the time domain
B0 B1 Bk … Pack into 3D Array D 3D-FFT Thresholding ^ ^ ^ B0 B1 Bk … Pack into 3D Array D 3D-IFFT Sparsity Enforcement Projection onto prior constraint
Image Examples exemplar based Guleryuz’s scheme our work exemplar based Guleryuz’s scheme our work original damaged original damaged
Parallel and Distributed Processing (PDP) • Dominant form of Connectionism (models mental or behavioral phenomena as the emergent processes of interconnected networks of simple units.) • More widely known as neural networks since 1980s
? + = Image Quiltingfor Texture Synthesis & Transfer Alexei Efros and Bill Freeman (SIGGRAPH’2001)
p Pixel-level Nonparametric Sampling non-parametric sampling • Assuming Markov property, compute P(p|N(p)) • Building explicit probability tables infeasible • Instead, let’s search the input image for all similar neighborhoods — that’s our histogram for p • To synthesize p, just pick one match at random Input image Synthesizing a pixel
Block-level Chaos Mosaic • Process: 1) tile input image; 2) pick random blocks and place them in random locations 3) Smooth edges input idea result
Comparison with Periodic Mosaic chaotic periodic
Doesn’t work for structured textures input result
B p Synthesizing a block • Idea: unit of synthesis = block • Exactly the same but now we want P(B|N(B)) • Much faster: synthesize all pixels in a block at once • Not the same as multi-scale! Image Quilting=Nonparametric Sampling+Chaos Mosaic non-parametric sampling • Observation: neighbour pixels are highly correlated Input image
B1 B1 B2 B2 Neighboring blocks constrained by overlap Minimal error boundary cut block Input texture B1 B2 Random placement of blocks
2 _ = overlap error min. error boundary Minimal error boundary overlapping blocks vertical boundary
Search for the Shortest Path end start
An Elegant Solution • Exhaustive search is computationally infeasible • Fortunately, there exists a fast and optimum solution known as Dynamic Programming (DP) in Operations Research and Viterbi Algorithm (VA) in communication
DP/VA Example start end Basic Idea: Only keep the best Q survivors in sequential decision
Image Quilting Algorithm • Pick size of block and size of overlap • Synthesize blocks in raster order • Search input texture for block that satisfies minimum error constraints (above and left) • Paste new block into resulting texture
+ =
parmesan + = rice + =
Summary for Texture Synthesis • Parametric approach • Histogram/high order statistics matching in the wavelet/steerable pyramid space • Nonparametric approach • Conceptually simple and effective • Interesting application into image inpainting & quilting • Produce visually convincing results • Parametric vs. nonparametric: which is the winner? • It depends on the application • How to combine them together?