Lecture 22: Image Processing (54)
jsun28

I think it’s really interesting how non parametric texture synthesis to generate textures without relying on specific statistical models. What computational resources and parameters tuning are used to create optimal results? Also when is it beneficial to use this technique in comparison to those based on mathematical models? How would the computational time for both of these two methods compare?

llejj

It looks like increasing the search window reduces the randomness of the output. For the best results, how should we choose the search window size?

andrewn3672

This texture synthesis algorithm is very intuitive and easy to understand why increasing the search space allows for better images. With a smaller search space, we lose a lot of details of the original texture, and increasing it allows us to more accurately represent the texture. This kind of reminds me of super sampling where we essentially need to increase the amount of samples to get better results, but this also makes it so we need to make more computations which slows down the program.

NothernSJTU

@llejj: For textures with high detail, a smaller search window might be sufficient to capture the necessary detail and maintain high-quality output. For more homogeneous or less detailed textures, a larger window might be necessary to avoid visible repetition and enhance randomness.

508312

I think this can be very helpful in gamedev, imagine instead of usual techniques to avoid tiling deterministically synthesising images on the fly to get non repeating patterrns

DTanxxx

Found this article outlining an "example-based synthesis" technique for texture synthesis https://medium.com/embarkstudios/texture-synthesis-and-remixing-from-a-single-example-faf5f4e8a5b8. This can drastically reduce the repetitively work to create hand-drawn textures that look alike but still require some variety.

brandogn

These ideas remind me a lot of another algorithm called "wave function collapse" which is inspired by quantum mechanics. I'm not entirely sure how it works, but I think it's often used to procedurally generate worlds based on an image and/or rules for what pixels/blocks can be adjacent. Here's a blog post I found on it: https://robertheaton.com/2018/12/17/wavefunction-collapse-algorithm/

JunoLee128

It's interesting how some of these "synthetic" textures rely on a very simple algorithm (compared to other DL approaches) but seem very organic and pleasant to the human eye. Even though the algorithm doesn't "logic" about the image as a whole, convolution can get you very far. Nice!

brianqch

I found this to be very fascinating because as we increase the window size, the pattern becomes more defined and uniform. This reminds me of certain photoshop tools in which we are able to merge two photos together, "stitching" in areas where they are similar.

You must be enrolled in the course to comment