Hacker News new | comments | ask | show | jobs | submit login
Show HN: I implemented seamless copy and paste of images, and wrote a tutorial (erkaman.github.io)
123 points by erkaman 11 months ago | hide | past | web | favorite | 11 comments

In this artice, I describe a technique that can be used to seamlessly copy-and-paste one image into another. I also provide source code(https://github.com/Erkaman/poisson_blend), that demonstrates the concepts in the article.

Looks very cool, am I correct in thinking this won't produce images that are seamless without a good mask to go along with the image?

If that's the case I'd be curious to see how it works with masks generated with e.g. photoshops smart edge detection.

Check the masks here, compare them with those that you can generate fast and then please write about what you've found:


I'd also like to read what you can conclude.

yes, the mask is also pretty important. otherwise, you get lots of stuff from the background of your source image in your blended image, which often looks pretty bad.

That was very well explained. Would it be possible to include this into GIMP?

since the technique is so simple, it's probably not hard at all to include into GIMP. Wouldn't surprise me if someone had already implemented a plugin for it.

Indeed, this has been implemented in G'MIC [1], which can be used as a plugin in gimp. I definitively recommend it! (based on the exact same paper :-)

[1] https://www.youtube.com/watch?v=zsHgQY6025I

Thanks for the beautiful explanation, i have no math background and this was really easy to understand.

Ulterior examples than library+kitten/penguin would be great

you can see more examples in the linked repo:


The blurriness around the edges gives it away --- and blurring the edges is incidentally the same technique that Photoshoppers use when they can't quite get the borders right.

For people that already work with ImageMagick and would prefer an ImageMagick Poisson blend solution, this is a great resource:


It contains the windows .bas script that makes ImageMagick implement Poisson blending. It should be easily enough portable to shell code.

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact