5 ms·
Newbie here trying to follow. The prior post I link below suggests that what’s going on here is we are trying to find good points to sample an image. A challe
by onos 5y ago
Newbie here trying to follow.
The prior post I link below suggests that what’s going on here is we are trying to find good points to sample an image. A challenge here is that the algorithms to generate the blue noise distributed sample points are slow. This motivates using an FT signal constructed by hand and then inverting this somehow to get sample points more quickly. But… he’s finding that the result doesn’t place sample points uniformly throughout an image. Is that right?
How does one construct discrete sample points from the inverted FT?
https://blog.demofox.org/2017/10/20/generating-blue-noise-sample-points-with-mitchells-best-candidate-algorithm/ https://blog.demofox.org/2017/10/20/generating-blue-noise-sa...
- dahart 5y agoYep, you’ve got the right idea - the implied goal of trying to use the FT is to make blue noise texture generation faster, but it doesn’t seem to work using the DFT. (Or maybe there are unmet constraints on how you need to generate the frequency space texture.) > How does one construct discrete sample points from the inverted FT? This is a good question! So one example the author has (in a different post) is how to use blue noise textures for ray traced shadows. The idea is at every pixel of your output image, trace a ray into the scene, then when it hits something, trace a ray toward the light to see if the pixel is lit or shadowed. Normally, you’d use a random number generator to pick a random sample on the hemisphere of the surface the first ray hits, and shoot a new ray in this random direction. You can instead grab your two random values from the red and green channels of a blue noise texture. The blue noise texture could have the same size as your desired output image, and you would use the same pixel id in the blue noise texture as the pixel id of your output image. That example is pretty easy, but I found out it can be surprisingly tricky to use blue noise textures in other ways, there are a limited number of ways you can use a blue noise texture effectively, and it’s not always an easy drop-in replacement for a white noise random number generator. It’s much harder to use blue noise for multiple samples per pixel, for example. It’s harder to create a sequence of blue-distributed random numbers for use in a single integral. Another way to say that is that it would be difficult to generate your camera rays using blue noise.
- onos 5y agoThanks very much for that detailed explanation — it helps a lot!