PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Skalierung der Gauß-Verteilung zur Weichzeichnung


ollix
2006-12-13, 17:45:20
Hi

ich habe gerade einen dynamischen Gauß-Weichzeichner-Filter für Texturen in GLSL implementiert, der mit dynamischen Gewichten und Variablen Kernelgrößen arbeitet. Der ist als 2pass Filter implementiert, der einen horizonalen und einen vertikalen Blurpass nacheinander anwendet. Das scheint auch erstmal zu funktionieren, ich bin aber bei der Stärke der Anwendung unsicher.

Jeder Texel wird dort mit einem unterschiedlichen Grad weichgezeichnet und ich habe die Blur-Intensität über die Standardabweichung Sigma modelliert. So wird dann eine n*1 und 1*n Matrix mit Kernelgewichten gefüllt, die Matrixelemente zusammengezählt und alles auf die Summe 1 skaliert um bei der Texturabtastung eine korrekte Verteilung zu haben. Nur wo fange ich an - welches ist die Standardabweichung, die einer Blurintensität von fast 0 entspricht ([0 0 1 0 0] z.B.). Mit der Standardabweichung 0 bekomme ich dabei ja keine gültigen Werte. Ich habe versucht mit sehr kleinen Werte nahe 0 anzufangen, aber das scheint dann auch abhängig von der Kernelgröße zu sein, bis alle Elemente definiert sind?

Wie wird die Standardabweichung üblicherweise skaliert um Kernel für kein Blur bis maximaler (für diese Implementierung angenommer) Blur zu erhalten? Habe da irgendwie nicht viel zu finden können.

danke

ollix
2006-12-13, 23:21:20
Frage zurück! Habe in der Implementierung einen ziemlichen Bock geschossen und als die Ergebnisse dann nicht innerhalb der Erwartungen lagen, den Fehler auch noch komplett nach Maple übernommen und mich den halben Tag ob dieses eigenartigen Skalierungsverhaltens gewundert. :redface: