Loading the interactive demo for "See the frequencies robust methods hide in"… The lesson text below is already here. The hands-on part loads next (requires JavaScript).
Every claim in chapters 3-5 about 'frequencies' finally becomes visible. Your image, broken into 8×8 cosine blocks, with the hiding space lit up in orange.
Drag the quality slider. The order in which detail dissolves is the order in which watermarks die: high frequencies first, DC last.
What the heatmap shows
Each cell is one 8×8 block's mid-band energy: the sum of cosine coefficients too slow to be obvious, too fast to survive quantization. Bright cells hide data well; dark cells starve.
Portraits glow around hair, fabric and foliage. Skies, walls and gradients go dark. Your pack has both. Now you know which is which.
What the quality slider does
Real JPEG quantization tables divide each coefficient and round. The reconstruction preview runs that exact math on your blocks: watch q90 stay faithful while q30 melts into squares.
Those squares are blocking artifacts, the visible result of high frequencies quantized away. Every fragile watermark in those blocks died first.
Takeaways
- Images are sums of cosine waves; JPEG keeps the big slow ones.
- Mid-band energy is the hiding real estate: bright heatmap blocks carry well.
- Quantization kills high frequencies first, DC last. That order decides which marks survive.
Check yourself
Optional, local, instant. 0/2 answered.
- Bright heatmap blocks mean…
- Drag quality from 90 to 30. What dissolves first?
For your niche
High-ISO grain lights up the heatmap beautifully: noise is hiding space. Clean studio backdrops are the opposite.
Phone photos in mixed lighting carry well. Flat ring-light portraits less so. Verify those specifically.
Sharp vector edges spike mid-band energy locally but vanish under quantization. Test exports, not masters.