Mitchell–Netravali滤波器

Mitchell–Netravali滤波器或BC–样条是一组主要用于计算机图形学的重建滤波器（英语：Reconstruction filter），例如，可被用于抗锯齿或缩放光栅图形。它们在图像编辑程序中也被称为双三次滤波器，因为它们是二维三次样条。 Mitchell–Netravali滤波器是作为对重建滤波器（英语：Reconstruction filter）失真（artifacts）调查的一部分而被设计的。滤波器是具有四像素宽支撑的分段三次滤波器。从这个系列中排除不合适的滤波器后，例如不连续的曲线，仍然存在两个参数B和C ，通过它们可以配置Mitchell–Netravali滤波器。滤波器定义如下： 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 其他情况 {\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{其他情况}}\end{cases}}} 通过分离（英语：Separable filter）构造 Mitchell–Netravali滤波器的二维版本有可能的。在这种情况下，滤波器可以被一维滤波器的一系列插值代替。从四个相邻像素的颜色值 P 0 {\displaystyle P_{0}} , P 1 {\displaystyle P_{1}} , P 2 {\displaystyle P_{2}} , P 3 {\displaystyle P_{3}} 然后计算颜色值 P ( d ) {\displaystyle P(d)} 如下： 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} 介于 P 1 {\displaystyle P_{1}} 和 P 2 {\displaystyle P_{2}}  ; d {\displaystyle d} 是 P 1 {\displaystyle P_{1}} 和 P {\displaystyle P} 之间的距离。 如下图所示，参数B和C的某些选择可能会导致各种失真。研究人员推荐参数数值来自 B + 2 C = 1 {\displaystyle B+2C=1} （虚线）家族和尤其是 B = C = 1 3 {\displaystyle \textstyle B=C={\frac {1}{3}}} 作为一个令人满意的妥协。 以下参数导致常见图像编辑程序中使用的众所周知的三次样条 在GIMP(Catmull-Rom) 中使用双三次滤波器进行放大 在Paint.NET（B样条）中使用双三次滤波器进行放大 振鈴效應 各向异性过滤 Mitchell, Don; Netravali, Arun. Reconstruction Filters in Computer-Graphics (PDF). 写于Atlanta. Proceedings of the 15th annual conference on computer graphics and interactive techniques (SIGGRAPH '88). ACM SIGGRAPH 22 (4). New York City: Association for Computing Machinery: 221–228. June 1998 [25 October 2020]. CiteSeerX 10.1.1.582.7394 . ISBN 0897912756. ISSN 0097-8930. doi:10.1145/378456.378514. （原始内容存档 (PDF)于2023-02-07）.  Pharr, Matt; Jakob, Wenzel; Humphreys, Greg. Sampling and Reconstruction. Physically Based Rendering: From Theory to Implementation 3rd. San Francisco: Morgan Kaufmann Publishers. November 2016: 279–367 [25 October 2020]. ISBN 978-0-12-800645-0. （原始内容存档于2023-06-02）.  Theußl, Thomas. The eighties: an image processing view. Sampling and Reconstruction in Volume Visualization (学位论文). TU Wien. 29 December 1999 [2023-04-08]. （原始内容存档于2014-08-24）.  Thyssen, Anthony. Resampling Filters. Examples of ImageMagick Usage (Manual). ImageMagick. [25 October 2020].  Summers, Jason. What is bicubic resampling?. Entropymine (Project). September 2011 [25 October 2020]. （原始内容存档于2023-04-08）.