Mitchell–Netravali filters

From HandWiki - Reading time: 4 min


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.[1][2][3]

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 and C remain, through which the Mitchell–Netravali filters can be configured. The filters are defined as follows:

k(x)=16{(12−9B−6C)|x|3+(−18+12B+6C)|x|2+(6−2B), if |x|<1(−B−6C)|x|3+(6B+30C)|x|2+(−12B−48C)|x|+(8B+24C), if 1≤|x|<20otherwise

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 P0, P1, P2, P3 the color value is then calculated P(d) as follows:

P(d)=((−16B−C)P0+(−32B−C+2)P1+(32B+C−2)P2+(16B+C)P3)d3+((12B+2C)P0+(2B+C−3)P1+(−52B−2C+3)P2−CP3)d2+((−12B−C)P0+(12B+C)P2)d+16BP0+(−13B+1)P1+16BP2

P lies between P1 and P2; d is the distance between P1 and 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+2C=1 (dashed line) and especially B=C=13 as a satisfactory compromise.[1][4]

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[5]
1/3 1/3 Mitchell–Netravali Mitchell filter in ImageMagick[4]
1 0 B-spline Bicubic filter in Paint.net

Examples

See also

References

  1. ↑ 1.0 1.1 Mitchell, Don; Netravali, Arun (June 1998). "Reconstruction Filters in Computer-Graphics". written at Atlanta. ACM SIGGRAPH. 22. New York City: Association for Computing Machinery. pp. 221–228. doi:10.1145/378456.378514. ISBN 0897912756. https://www.cs.utexas.edu/~fussell/courses/cs384g-fall2013/lectures/mitchell/Mitchell.pdf. 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. http://www.pbr-book.org/3ed-2018/Sampling_and_Reconstruction.html. 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. ↑ 4.0 4.1 Thyssen, Anthony. "Resampling Filters". Examples of ImageMagick Usage (Manual). ImageMagick. Retrieved 25 October 2020.
  5. ↑ Summers, Jason (September 2011). "What is bicubic resampling?". https://entropymine.com/imageworsener/bicubic/. 




Licensed under CC BY-SA 3.0 | Source: https://handwiki.org/wiki/Mitchell–Netravali_filters
21 views | Status: cached on November 09 2026 21:42:52
↧ Download this article as ZWI file
Encyclosphere.org EncycloReader is supported by the EncyclosphereKSF