일정한 간격
이미지의 resampling 과정에서 spline를 이용하는데 이때 사용 가능한 kernel의 형태와 그 효과를 간단히 알아보자.
3차 spline kernel은 중심을 기준으로 반지름이 2인 영역
그리고 샘플링된 데이터가 모두 같은 경우 보간함수도 상수함수가 되는 것이 타당하므로
을 만족시켜야 한다.
임을 알 수 있다. 위에서 주어진
이 항등식의 계수가 0이 되어야 한다는 사실에서 2 개의 추가 조건을 얻으므로 총 8개 계수 중 2개가 미결정 free parameter로 남는다. 보통 이 두 계수는
따라서 cubic spline kernel은 두 개의 파라미터 (B,C)에 의해서 정해진다. 또한 kernel 함수의 적분은
이 중에는 이미지의 resampling에서 많이 사용되는 커널도 있는데, 잘 알려진 경우를 보면

// Mitchell Netravali Reconstruction Filter
// B = 0 C = 0 - Hermite B-Spline interpolator
// B = 0, C = 1/2 - Catmull-Rom spline
// B = 1/3, C = 1/3 - Mitchell Netravali spline
// B = 1, C = 0 - cubic B-spline
double MitchellNetravali(double x, double B, double C) {
x = fabs(x);
if (x >= 2) return 0;
double xx = x*x;
if (x >= 1) return ((-B - 6*C)*xx*x
+ (6*B + 30*C)*xx + (-12*B - 48*C)*x
+ (8*B + 24*C))/6;
if (x < 1) return ((12 - 9*B - 6*C)*xx*x +
(-18 + 12*B + 6*C) * xx + (6 - 2*B))/6;
}
'Image Recognition > Fundamental' 카테고리의 다른 글
Graph-based Segmentation (1) | 2024.05.26 |
---|---|
Linear Least Square Fitting: perpendicular offsets (0) | 2024.03.22 |
Ellipse Fitting (0) | 2024.03.02 |
Bilateral Filter (0) | 2024.02.18 |
파라미터 공간에서 본 최소자승 Fitting (0) | 2023.05.21 |