In Grafiken ist es üblich, mehrere Samples innerhalb der Grenzen eines Pixels zu nehmen und sie zu kombinieren (meistens nur einen Durchschnitt), um eine endgültige Sample-Pixelfarbe zu erhalten. Dies hat den Effekt eines Anti-Aliasing eines Bildes.
Einerseits macht dies für mich Sinn, weil Sie effektiv die Farbe des Pixels über den Bereich integrieren, den das Pixel darstellt. In dieser Denkrichtung scheint die Mittelung von "zufälligen" Stichproben die ideale Lösung für die Integration von Monte Carlo zu sein. ("zufällig" könnte geschichtet sein, auf blauem Rauschen basieren, Sequenzen mit geringer Diskrepanz usw.)
Andererseits fühlt sich dies aus Sicht der digitalen Signalverarbeitung falsch (oder zumindest nicht so richtig an, wie es sein könnte). Unter diesem Gesichtspunkt scheint es, als würden wir eine Menge Samples nehmen und dann mit einem Box-Filter (Box Blur) ein Downsampling durchführen, um den endgültigen Pixelwert zu erhalten. In diesem Licht scheint es das Ideale zu sein, eine Sinc-Filterung zu verwenden, anstatt die Abtastwerte zu mitteln. Ich konnte sehen, dass der Box-Filter eine billigere Annäherung ist, um in diese Richtung zu denken.
Das macht mich etwas verwirrt. Ist die Grundidee, dass wir den Pixelbereich integrieren und die Mittelung korrekt ist? Oder ist es so, dass wir ein Downsampling durchführen und sinc verwenden sollten, aber einen Box-Filter verwenden, weil er schnell ist?
Oder ist es etwas ganz anderes?
Ein bisschen verwandt: Anti-Aliasing / Filtering in Ray Tracing
quelle
Antworten:
Unter dem Gesichtspunkt der Signalverarbeitung nehmen Sie ein Signal im kontinuierlichen Bereich auf und müssen es filtern, um Frequenzen jenseits der Nyquist-Grenze zu entfernen. Diese Filterung führt zur Integration über den Pixelbereich - oder allgemeiner über die Unterstützung Ihres Antialiasing-Kernels (der keine Box sein muss).
Jetzt möchten Sie es auf eine begrenzte Anzahl von Pixeln konvertieren. Ähnlich wie beim Digitalisieren eines Audiosignals erhalten Sie beim Abtasten ein Aliasing, es sei denn, Sie eliminieren zuerst Frequenzen, die über dem durch die Abtastrate festgelegten Nyquist-Grenzwert liegen. Mit anderen Worten, Sie müssen Features entfernen, die kleiner als das Pixelraster sind. Dazu wenden Sie einen Tiefpassfilter an. Das ideale Tiefpassfilter ist die sinc-Funktion, aber aus praktischen Gründen verwenden wir andere Filter (die Frequenzen über der Nyquist-Grenze nicht perfekt eliminieren, sie aber zumindest dämpfen).
quelle
Sie machen tatsächlich beide Dinge. Sie integrieren den Bereich, und da Ihr Ergebnis immer noch diskrete Abtastwerte sind, rekonstruieren Sie das Signal, damit es kontinuierlich funktioniert. Daher die Filterung höherer Ordnung. (Auch das menschliche Auge ist ein diskreter Sampler, so dass es auch das Signal rekonstruiert.)
Ich habe viel Zeit gebraucht, um mich mit dieser Erklärung auseinanderzusetzen. Was mir geholfen hat, war ein Artikel von Tony Apodaca mit dem Titel The Lore of TDs .
quelle