340 likes | 533 Views
Texture Splicing. Yiming Liu, Jiaping Wang, Su Xue , Xin Tong, Sing Bing Kang, Baining Guo. Related Works: Texture Synthesis. …. basic element. Similar basic element. Similar placement distribution. placement distribution. Related Works: Texture Transfer.
E N D
Texture Splicing Yiming Liu, Jiaping Wang, Su Xue, Xin Tong, Sing Bing Kang, BainingGuo
Related Works: Texture Synthesis … basic element Similar basic element Similar placement distribution placement distribution
Related Works: Texture Transfer • [Efros and Freeman 2001], [Hertzmann et al. 2001]…
Related Works: Texture Design • [Matusik et al. 2005] and other works…
Related Works: Texture Element Extraction • Near-Regular Texture Analysis • [Liu et al. 2004], [Hays et al. 06]; • Limited to near-regular textures.
Texture Splicing = + basic element = + placement distribution new texture
Texture Analysis (1) self-similarity search
Self-Similarity Search Normalized Cross Correlation Sliding Window Template Patch Texture Image Normalized Cross Correlation Value
Placement Distribution Extraction Texture Image Placement Distribution Normalized Cross Correlation Value
Texture Analysis (2) Graph Cut
Graph Cut based Segmentation Minimize: F B
Different Types of Textures Foreground:Rigid Disjoint Foreground:Rigid Connected Background:Rigid Connected
New Texture Generation Texture A Distribution A Deformation Field Texton Mask Texture B Distribution B New Texture
Mapping The Points in Source and Target Distribution • Get a mapping function fAB CAB measures the spatial distance between two points. Solved with minimum-cost bipartite graph matching.
Getting Deformation Field W • Find a deformation field WAB which: • Map texture element p(x, y) in source distribution to its correspondent position in target distribution (fx(p), fy(p)); • Preserve the rigidity in the rigid area as much as possible. Rigid area Non-rigid area
Getting Deformation Field W • Solve ∆(p) = WAB(p) – p • Separate x and y: ∆(p) = (∆x(p), ∆y(p)); • Energy Function:
Non-Rigid vs. Rigid (1) Non-Rigid Rigid Texture Deformation Field Deformation Field Result Result Texton Mask
Non-Rigid vs. Rigid (2) Non-Rigid Rigid Texture Deformation Field Deformation Field Result Result
Non-Rigid vs. Rigid (3) Non-Rigid Rigid Texture Deformation Field Deformation Field Result Result
Barycentric Interpolation WBA(q) q source output
Final Refinement • Texture Synthesis [Lefebvre and Hoppe 2006] • Add fine details to the texture. • Fix the incorrectly deformed area in the texture. Before texture synthesis After texture synthesis
Summary • Texture Splicing: a novel method for texture editing. • Simple idea: generate new textures with one texture’s element and another’s spatial placement distribution: • Self-similarity search; • Graph-cut based segmentation; • Image deformation with rigid constraint.
Summary (Cont’d) • Simple but useful for users: • The user just need to provide two texture images. • The user can also directly editing the spatial placement. • Require more interaction, but • Provides more control on texture design.
Thank You! • Any questions?