How to blur images at 20,000 FPS (or 50 microseconds)
3-Second Blueprint (English)
- Naive 2D box and Gaussian blurs become bottlenecked on GPUs because 2D convolution texture reads scale quadratically with radius.
- Separable convolutions factor a 2D kernel into vertical and horizontal 1D passes across ping-pong buffers, slashing sample cost.
- Dual Kawase blur combines GPU bilinear interpolation with downsampled buffers to cut thread dispatches and blur in 50 microseconds.
Separable 1D ConvolutionsGaussian & Box Blur KernelsPing-Pong FramebuffersGPU Bilinear FilteringDual Kawase Downsample Blur
3-Sekunden-Fazit (Deutsch)
- Naive 2D-Box- und Gauß-Weichzeichner bremsen GPUs aus, da die Texturzugriffe quadratisch mit dem Filterradius wachsen.
- Separierbare Faltungen zerlegen 2D-Kerne in je einen vertikalen und horizontalen 1D-Pass über Ping-Pong-Puffer.
- Dual-Kawase-Blur kombiniert bilineares GPU-Sampling mit verkleinerten Puffern und erreicht so Blur-Zeiten von 50 Mikrosekunden.
Separierbare 1D-FaltungGauß- & Box-Blur-KernelPing-Pong-PufferBilineares GPU-SamplingDual-Kawase-Blur
Note / Hinweis: Blueprints are AI-generated educational summaries and do not constitute medical, legal, or financial advice. / KI-generierte Zusammenfassung zu Bildungszwecken – ersetzt keine medizinische, rechtliche oder finanzielle Fachberatung.