Mitchell-Netravali-Filter
Die Mitchell-Netravali-Filter oder BC-Splines sind eine vorrangig in der Computergrafik verwendete Gruppe von Rekonstruktionsfiltern, die zum Beispiel beim Antialiasing oder bei der Skalierung von Rastergrafiken verwendet werden können. In Bildbearbeitungsprogrammen werden sie auch als bikubische Filter bezeichnet, da sie zu den kubischen Splines zählen.
Definition
Die Mitchell-Netravali-Filter wurden im Rahmen einer Untersuchung zu Artefakten von Rekonstruktionsfiltern entworfen. Die Filter sind stückweise kubische Filter mit vier Pixel breiten Trägern. Nach Ausschluss ungeeigneter Filter aus dieser Familie, wie zum Beispiel unstetige Kurven, verbleiben zwei Parameter <math>B</math> und <math>C</math>, durch die die Mitchell-Netravali-Filter konfigurierbar sind. Die Filter sind wie folgt definiert:
- <math>
k(x) = \frac{1}{6} \begin{cases} \begin{array}{l} (12-9B-6C)|x|^3 + (-18+12B+6C)|x|^2 \\ \qquad + (6-2B) \end{array} & \text{, wenn } |x|<1 \\ \begin{array}{l} (-B-6C)|x|^3 + (6B+30C)|x|^2 \\ \qquad + (-12B-48C)|x| + (8B+24C) \end{array} & \text{, wenn } 1\le |x|<2 \\ 0 & \text{ansonsten} \end{cases} </math>
Es ist möglich, zweidimensionale Versionen der Mitchell-Netravali-Filter durch Separation zu konstruieren (siehe: Rekonstruktionsfilter: Konstruktion zweidimensionaler Filter). In diesem Fall können die Filter durch eine Reihe von Interpolationen mit dem eindimensionalen Filter ersetzt werden. Aus den Farbwerten der vier benachbarten Pixel <math>P_0</math>, <math>P_1</math>, <math>P_2</math>, <math>P_3</math> berechnet sich dann der Farbwert <math>P(d)</math> folgendermaßen:
- <math>\begin{align}
P(d) &\textstyle = \left((-\frac{1}{6}B-C)P_0 + (-\frac{3}{2}B-C+2)P_1 + (\frac{3}{2}B+C-2)P_2 + (\frac{1}{6}B+C)P_3\right) d^3 \\ &\textstyle + \left((\frac{1}{2}B+2C)P_0 + (2B+C-3)P_1 + (-\frac{5}{2}B-2C+3)P_2 -CP_3\right) d^2 \\ &\textstyle + \left((-\frac{1}{2}B-C)P_0 + (\frac{1}{2}B+C)P_2\right) d \\ &\textstyle + \frac{1}{6}BP_0 + (-\frac{1}{3}B+1)P_1 + \frac{1}{6}BP_2 \\ \end{align}</math>
<math>P</math> liegt hierbei zwischen <math>P_1</math> und <math>P_2</math>; <math>d</math> ist der Abstand zwischen <math>P_1</math> und <math>P</math>.
Spezialfälle
Je nach Wahl der Parameter B und C kann es zu verschiedenen Artefakten kommen (siehe Bild rechts). Die Entwickler schlugen die Parameter aus der Familie <math>B+2C=1</math> und besonders <math>\textstyle B=C=\frac{1}{3}</math> als guten Kompromiss vor.
Die Wahl bestimmter Parameter führt zu bekannten kubischen Splines:
- B=1, C=0 ist der kubische B-Spline (als bikubischer Filter z. B. in Paint.NET verwendet);
- B=0 ist die Familie der Cardinal Splines;
- B=0, C=0,5 ist der Catmull-Rom Spline (als bikubischer Filter z. B. in GIMP verwendet).
Literatur
- {{#invoke:Vorlage:Literatur|f}}
- {{#invoke:Vorlage:Literatur|f}}
- {{#invoke:Vorlage:Literatur|f}}
Weblinks
- <templatestyles src="Webarchiv/styles.css" />{{#if:20140824074425
| {{#ifeq: 20140824074425 | *
| {{#if: The eighties: an image processing view. | {{#invoke:WLink|getEscapedTitle|The eighties: an image processing view.}} | {{#invoke:Webarchiv|getdomain|http://www.cg.tuwien.ac.at/~theussl/DA/node11.html}} }} (Archivversionen)
| {{#iferror: {{#time: j. F Y|20140824074425}}
| {{#if: || }}Der Wert des Parameters {{#if: wayback | wayback | Datum }} muss ein gültiger Zeitstempel der Form YYYYMMDDHHMMSS sein!
| {{#if: The eighties: an image processing view. | {{#invoke:WLink|getEscapedTitle|The eighties: an image processing view.}} | {{#invoke:Webarchiv|getdomain|http://www.cg.tuwien.ac.at/~theussl/DA/node11.html}} }} {{#ifeq: | [] | [ | ( }}{{#if: {{#if: | {{{archiv-bot}}} | }} | des Vorlage:Referrer }} vom {{#time: j. F Y|20140824074425}} im Internet Archive{{#if: | ; }}{{#ifeq: | [] | ] | ) }}
}}
}}
| {{#if:
| {{#iferror: {{#time: j. F Y|{{{webciteID}}}}}
| {{#switch: {{#invoke:Str|len|{{{webciteID}}}}}
| 16= {{#if: The eighties: an image processing view. | {{#invoke:WLink|getEscapedTitle|The eighties: an image processing view.}} | {{#invoke:Webarchiv|getdomain|http://www.cg.tuwien.ac.at/~theussl/DA/node11.html}} }} {{#ifeq: | [] | [ | ( }}{{#if: {{#if: | {{{archiv-bot}}} | }} | des Vorlage:Referrer }} vom {{#time: j. F Y| 19700101000000 + {{#expr: floor {{#expr: {{#invoke:Str|sub|{{{webciteID}}}|1|10}}/86400}} }} days}} auf WebCite{{#if: | ; }}{{#ifeq: | [] | ] | ) }}
| 9 = {{#if: The eighties: an image processing view. | {{#invoke:WLink|getEscapedTitle|The eighties: an image processing view.}} | {{#invoke:Webarchiv|getdomain|http://www.cg.tuwien.ac.at/~theussl/DA/node11.html}} }} {{#ifeq: | [] | [ | ( }}{{#if: {{#if: | {{{archiv-bot}}} | }} | des Vorlage:Referrer}} vom {{#time: j. F Y| 19700101000000 + {{#expr: floor {{#expr: {{#invoke:Str|sub|{{#invoke:Expr|base62|{{{webciteID}}}}}|1|10}}/86400}} }} days}} auf WebCite{{#if: | ; }}{{#ifeq: | [] | ] | ) }}
| #default= Der Wert des Parameters {{#if: webciteID | webciteID | ID }} muss entweder ein Zeitstempel der Form YYYYMMDDHHMMSS oder ein Schüsselwert mit 9 Zeichen oder eine 16-stellige Zahl sein!{{#if: || }}
}}
| c|{{{webciteID}}}}} {{#if: The eighties: an image processing view. | {{#invoke:WLink|getEscapedTitle|The eighties: an image processing view.}} | {{#invoke:Webarchiv|getdomain|http://www.cg.tuwien.ac.at/~theussl/DA/node11.html}} }} ({{#if: {{#if: | {{{archiv-bot}}} | }} | des Vorlage:Referrer}} vom {{#time: j. F Y|{{{webciteID}}}}} auf WebCite{{#if: | ; }}{{#ifeq: | [] | ] | ) }}
}}
| {{#if:
| Vorlage:Webarchiv/Today
| {{#if:
| Vorlage:Webarchiv/Generisch
| {{#if: The eighties: an image processing view. | {{#invoke:WLink|getEscapedTitle|The eighties: an image processing view.}} | {{#invoke:Webarchiv|getdomain|http://www.cg.tuwien.ac.at/~theussl/DA/node11.html}} }}
}}}}}}}}{{#if:
| Vorlage:Webarchiv/archiv-bot
}}{{#invoke:TemplatePar|check
|all = url=
|opt = text= wayback= webciteID= archive-is= archive-today= archiv-url= archiv-datum= ()= archiv-bot= format= original=
|cat = Wikipedia:Vorlagenfehler/Vorlage:Webarchiv
|errNS = 0
|template = Vorlage:Webarchiv
|format = *
|preview = 1
}}{{#ifexpr: {{#if:20140824074425|1|0}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}}{{#if:|+1}} <> 1
| {{#if: || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Genau einer der Parameter 'wayback', 'webciteID', 'archive-today', 'archive-is' oder 'archiv-url' muss angegeben werden.|1}}
}}{{#if:
| {{#switch: {{#invoke:Webarchiv|getdomain|{{{archiv-url}}}}}
| web.archive.org =
{{#if: || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von Internet Archive erkannt, bitte Parameter 'wayback' benutzen.|1}}
| webcitation.org =
{{#if: || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von WebCite erkannt, bitte Parameter 'webciteID' benutzen.|1}}
| archive.today |archive.is |archive.ph |archive.fo |archive.li |archive.md |archive.vn =
{{#if: || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Im Parameter 'archiv-url' wurde URL von archive.today erkannt, bitte Parameter 'archive-today' benutzen.|1}}
}}{{#if:
| {{#iferror: {{#iferror:{{#invoke:Vorlage:FormatDate|Execute}}|}}
| {{#if: || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Wert des Parameter 'archiv-datum' ist ungültig oder hat ein ungültiges Format.|1}}
| }}
| {{#if: || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Pflichtparameter 'archiv-datum' wurde nicht angegeben.|1}}
}}
| {{#if:
| {{#if: || }}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Der Parameter 'archiv-datum' ist nur in Verbindung mit 'archiv-url' angebbar.|1}}
}}
}}{{#if:{{#invoke:URLutil|isHostPathResource|http://www.cg.tuwien.ac.at/~theussl/DA/node11.html}}
|| {{#if: || }}
}}{{#if: The eighties: an image processing view.
| {{#if: {{#invoke:WLink|isBracketedLink|The eighties: an image processing view.}}
| {{#if: || }}
}}
| {{#if: || }}
}}{{#switch:
|addlarchives|addlpages= {{#if: || }}{{#if: 1 |}}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: enWP-Wert im Parameter 'format'.|1}}
}}{{#ifeq: {{#invoke:Str|find|http://www.cg.tuwien.ac.at/~theussl/DA/node11.html%7Carchiv}} |-1
|| {{#ifeq: {{#invoke:Str|find|{{#invoke:Str|cropleft|http://www.cg.tuwien.ac.at/~theussl/DA/node11.html%7C4}}%7Chttp}} |-1
|| {{#switch: {{#invoke:Webarchiv|getdomain|http://www.cg.tuwien.ac.at/~theussl/DA/node11.html }}
| abendblatt.de | daserste.ndr.de | inarchive.com | webcitation.org =
| #default = {{#if: || }}{{#if: 1 |}}{{#invoke:TemplUtl|failure| Fehler bei Vorlage:Webarchiv: Archiv-URL im Parameter 'url' anstatt URL der Originalquelle. Entferne den vor der Original-URL stehenden Mementobestandteil und setze den Archivierungszeitstempel in den Parameter 'wayback', 'webciteID', 'archive.today' oder 'archive-is' ein, sofern nicht bereits befüllt.|1}}
}}
}}
}} – Thomas Teußl: Sampling and Reconstruction in Volume Visualization (Diplomarbeit).