Paul Harrison is a developer who makes Resynthesizer, a GIMP texture synthesis plugin, along with tiling generators and other small projects.
HN links it for Resynthesizer's object-removal feature, which commenters remember fondly. One notes the author has stopped maintaining it and wants a successor.
”using the opensource equivilent of Content Aware Fill (is there an FOSS equal?)”
https://en.m.wikipedia.org/wiki/Seam_carving#Implementations:
”Adobe Systems acquired a non-exclusive license to seam carving technology from MERL, and implemented it as a feature in Photoshop CS4, where it is called Content Aware Scaling. As the license is non-exclusive, other popular computer graphics applications, among which are GIMP, digiKam, ImageMagick, as well as some stand-alone programs, among which are iResizer, also have implementations of this technique, some of which are released as free and open source software”
Seam carving removes stuff, but the principle is the same. The Gimp plug-in is http://www.logarithmic.net/pfh/resynthesizer, and apparently also can do the filling-in. I haven’t used it, so I don’t know how good it is.
Wow. Pratt's obsession with Kickstarter "ripping off" Fundable is especially silly considering that both are essentially variants of Kelsey and Schneier's Street Performer Protocol, published in 1998 [1]. (That paper is not even the first instance of the basic idea, just one of the most well-known.)
Edited to add: I'd be really interested to see one of these sites implement the Rational Street Performer Protocol [2], which essentially means that each donor pledges matching funds ("I'll donate $X for every $Y that anyone else pledges, up to a maximum of $Z"). This gives individuals a stronger incentive to pledge more; the hard part is coming up with a simple explanation that first-time users will understand.
[1]: http://www.schneier.com/paper-street-performer.html
[2]: http://www.logarithmic.net/pfh/rspp
I wish that the Wolfram articles would describe a little more about what their algorithms do, rather than the mechanics of how to use their primitives. The articles remind me some of the era of web engines optimized for a specific task -- there were plenty of MVC frameworks that work really really well for writing a todo list in 25 lines, but doing anything more complicated than a todo list meant dissecting the guts of the framework.
It'd be great to hear how they did an efficient implementation of texture synthesis. But if you want to read at least about the basics, the dissertation they linked [1] gets into the details on page 18, anyway, in section 2.2 (and beyond).
[1] http://www.logarithmic.net/pfh-files/thesis/dissertation.pdf
This is amazing and all, but this technology has been available for GIMP users for years. I have been using something very similar since 2004 or 2005.
http://www.logarithmic.net/pfh/resynthesizer
This page http://slacy.com/blog/2005/04/cool-image-processing/ shows you how to use it to remove an object which will be automatically replaced by surrounding texture (similar to first example in video)
This page http://schwarzvogel.de/resynth-tut-sa.shtml shows an example of growing and image by auto-filling the missing edges around a photo (similar to last example in the video)
I suppose the new algorithms in PS are better, but still it's been over 5 years now :-)
Thanks!
I'm not sure, but I think that Penrose tilesets are what I call "easy": you can't run into a situation where you can't place a new tile. It would be great if someone here could confirm or deny this.
So if this is the case, then Penrose tilesets are not interesting to WFC, because you can produce arbitrary tilings with much simpler algorithms.
Right now though WFC is only working with square tiles, but it's not hard to generalize it to arbitrary shapes. Paul F. Harrison made a tiling program that supports hex tiles: http://logarithmic.net/pfh/ghost-diagrams See also the relevant paragraph in the readme (just search the word "easy").
Probably not. There are a number of image inpainting, texture synthesis, and reconstruction algorithms that can be applied, with different behaviors regarding noise, color correction, detail scale, handling of regularity/irregularity, temporal coherence, run time, etc.
GIMP's Resynthesizer is based on a 2005 PhD thesis, while the Photoshop thing is probably based on a 2009 SIGGRAPH paper.
http://www.logarithmic.net/pfh/thesis
http://www.cs.princeton.edu/gfx/pubs/Barnes_2009_PAR/index.php