Misplaced Pages

Mitchell–Netravali filters

Article snapshot taken from Wikipedia with creative commons attribution-sharealike license. Give it a read and then ask your questions in the chat. We can research this topic together.
(Redirected from Mitchell-Netravali filters)

The Mitchell–Netravali filters or BC-splines are a group of reconstruction filters used primarily in computer graphics, which can be used, for example, for anti-aliasing or for scaling raster graphics. They are also known as bicubic filters in image editing programs because they are bi-dimensional cubic splines.

Definition

Graph of the Mitchell–Netravali filter with parameters B = C = 1/3

The Mitchell–Netravali filters were designed as part of an investigation into artifacts from reconstruction filters. The filters are piece-wise cubic filters with four-pixel wide supports. After excluding unsuitable filters from this family, such as discontinuous curves, two parameters B {\displaystyle B} and C {\displaystyle C} remain, through which the Mitchell–Netravali filters can be configured. The filters are defined as follows:

k ( x ) = 1 6 { ( 12 9 B 6 C ) | x | 3 + ( 18 + 12 B + 6 C ) | x | 2 + ( 6 2 B ) , if  | x | < 1 ( B 6 C ) | x | 3 + ( 6 B + 30 C ) | x | 2 + ( 12 B 48 C ) | x | + ( 8 B + 24 C ) , if  1 | x | < 2 0 otherwise {\displaystyle 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{, if }}|x|<1\\{\begin{array}{l}(-B-6C)|x|^{3}+(6B+30C)|x|^{2}\\\qquad +(-12B-48C)|x|+(8B+24C)\end{array}}&{\text{, if }}1\leq |x|<2\\0&{\text{otherwise}}\end{cases}}}

It is possible to construct two-dimensional versions of the Mitchell–Netravali filters by separation. In this case the filters can be replaced by a series of interpolations with the one-dimensional filter. From the color values of the four neighboring pixels P 0 {\displaystyle P_{0}} , P 1 {\displaystyle P_{1}} , P 2 {\displaystyle P_{2}} , P 3 {\displaystyle P_{3}} the color value is then calculated P ( d ) {\displaystyle P(d)} as follows:

P ( d ) = ( ( 1 6 B C ) P 0 + ( 3 2 B C + 2 ) P 1 + ( 3 2 B + C 2 ) P 2 + ( 1 6 B + C ) P 3 ) d 3 + ( ( 1 2 B + 2 C ) P 0 + ( 2 B + C 3 ) P 1 + ( 5 2 B 2 C + 3 ) P 2 C P 3 ) d 2 + ( ( 1 2 B C ) P 0 + ( 1 2 B + C ) P 2 ) d + 1 6 B P 0 + ( 1 3 B + 1 ) P 1 + 1 6 B P 2 {\displaystyle {\begin{aligned}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{aligned}}}

P {\displaystyle P} lies between P 1 {\displaystyle P_{1}} and P 2 {\displaystyle P_{2}} ; d {\displaystyle d} is the distance between P 1 {\displaystyle P_{1}} and P {\displaystyle P} .

Subjective effects

Various artifacts may result from certain choices of parameters B and C, as shown in the following illustration. The researchers recommended values from the family B + 2 C = 1 {\displaystyle B+2C=1} (dashed line) and especially B = C = 1 3 {\displaystyle \textstyle B=C={\frac {1}{3}}} as a satisfactory compromise.

Subjective appearance of images reconstructed with various Mitchell–Netravali filters.

Implementations

The following parameters result in well-known cubic splines used in common image editing programs:

B C Cubic spline Common implementations
0 Any Cardinal splines
0 0.5 Catmull-Rom spline Bicubic filter in GIMP
0 0.75 Unnamed Bicubic filter in Adobe Photoshop
1/3 1/3 Mitchell–Netravali Mitchell filter in ImageMagick
1 0 B-spline Bicubic filter in Paint.net

Examples

  • Back of statue facing a city building whose facade is Greek columns covered by a huge U.S. flag Magnification with a bicubic filter in GIMP (Catmull-Rom)
  • Profile of stone face jutting out from a mountainside. Three workers clamber over it, each about the height of the face's upper lip. Magnification with a bicubic filter in Paint.NET (B-spline)

See also

References

  1. ^ Mitchell, Don; Netravali, Arun (June 1998). "Reconstruction Filters in Computer-Graphics" (PDF). Written at Atlanta. Proceedings of the 15th annual conference on computer graphics and interactive techniques (SIGGRAPH '88). ACM SIGGRAPH. Vol. 22. New York City: Association for Computing Machinery. pp. 221–228. CiteSeerX 10.1.1.582.7394. doi:10.1145/378456.378514. ISBN 0897912756. ISSN 0097-8930. Retrieved 25 October 2020.
  2. Pharr, Matt; Jakob, Wenzel; Humphreys, Greg (November 2016). "Sampling and Reconstruction". Physically Based Rendering: From Theory to Implementation (3rd ed.). San Francisco: Morgan Kaufmann Publishers. pp. 279–367. ISBN 978-0-12-800645-0. Retrieved 25 October 2020.
  3. Theußl, Thomas (29 December 1999). "The eighties: an image processing view". Sampling and Reconstruction in Volume Visualization (Diploma thesis). TU Wien. Archived from the original on 24 August 2014.
  4. ^ Thyssen, Anthony. "Resampling Filters". Examples of ImageMagick Usage (Manual). ImageMagick. Retrieved 25 October 2020.
  5. Summers, Jason (September 2011). "What is bicubic resampling?". Entropymine (Project). Retrieved 25 October 2020.
Category: