In this project, I find minimum energy seams in images to shrink or expand them.
Cityscape, from picsart.com.
A second cityscape, from Instagram user mahdifad.
Couch, from the project website.
Dolphin, from the Seam Carving paper website (http://www.faculty.idc.ac.il/arik/SCWeb/imret/index.html).
"Landscape with Aeneas at Delos" painting, 1672, Claude. From the UK national gallery.
waterfall, from the Seam Carving paper website (http://www.faculty.idc.ac.il/arik/SCWeb/imret/index.html).
Dolphin, from the Seam Carving paper website (http://www.faculty.idc.ac.il/arik/SCWeb/imret/index.html).
"Landscape with Aeneas at Delos" painting, 1672, Claude. From the UK national gallery.
House, from the project website. I only used the gradient-based energy function in my implementation, and this might be why I was unable to reproduce the results shown on the project website.
In this project, I extrapolate existing textures, and transfer them to match target images.
Naive method, where random patches are sampled from the source texture to create the new texture. Artefacts are clearly visible.
Improved method, where patches matching the generated new texture on an overlapping region are iteratively sampled from the source texture and added to the new texture. Fewer artefacts, but the existing ones extend in long lines.
Full method, where matches are fused on the overlapping region according to seam carving with an SSD-based energy function. Still contains artefacts, but they are less visually obvious.
Example seam found for texture quilting.