SEAMLESS TILING OF QUASI-PERIODIC TEXTURES VIA AN OPTIMAL CYCLIC SHIFT ON A DISCRETE TORUS - BEDRATYUK, Anna (Computer systems and information technologies, 2026)
In practical computer vision and computer graphics pipelines, it is often necessary to repeatedly replicate a single texture sample to construct a large canvas, background, or regular covering. When the mosaic is not strictly periodic, visible seams appear at the boundaries during repetition, disrupting the perceptual continuity of the texture and often manifesting as a regular grid of artifacts. Such seams not only degrade visual quality but can also alter local gradients and spectral components, which is critical for subsequent processing stages. Common seamless stitching methods increase computational complexity, introduce additional hyperparameters, and modify the local image statistics, which is undesirable in reproducible pipelines and in tasks where the invariance of pixel values is essential. The goal of this work is to propose a simple, reproducible, and computationally efficient method for seam reduction in quasiperiodic textures by selecting an optimal cyclic shift of the pattern that minimizes the energy of mismatch between opposite boundaries. The tile is modeled as a function on the discrete torus . A cyclic shift group is introduced, acting as a permutation of pixels. For each shift , the boundary seam energy is computed in a band of width for opposite boundary pairs, and the minimizing shift is selected. When needed, the evaluation is accelerated via cyclic correlations and FFT. Experiments on synthetic and real textures show that the optimal cyclic shift significantly reduces seam energy and the visual prominence of boundaries during tiling without modifying pixel values. For strictly periodic tiles, the method does not degrade the result. The proposed approach is a lightweight baseline tool for seamless tiling: it does not perform stitching but selects the best cut of the torus. The method is easy to integrate into production pipelines and can be used as a preprocessing step before further processing.