B-스플라인 보간
B-스플라인은 다항식 스플라인에 대해 가중치가 주어진 기준 함수 집합입니다.
• bspline(vx, vy, u, n) -
interp에 사용되는 벡터
vs를 구합니다. 이는
interp에 대한 플래그,
vx 및
vy의 데이터에 대한
n차 B-스플라인의 계수가 해당 열에 들어 있는 배열,
u에 지정된 노트 값, 노트를 통해 지정한 구간의 끝점이 해당 열에 들어 있는 배열 등의 요소를 중첩 배열로 사용하여 이루어진 벡터입니다.
bspline 함수를 사용하여 선형, 2차 또는 3차 스플라인을 만들 수 있습니다.
bspline을 통해 다항식 세그먼트를 결합하는 노트의 위치가 데이터 점 자체의 위치와 다를 수 있다는 점에서 스플라인의 생성 결과는
lspline,
pspline 또는
cspline의 경우와 다릅니다.
다음 함수는 상대적인 오차 레벨을 반영하여 데이터 값에 가중치를 적용합니다. 소프트웨어 알고리즘에서는 더빈-왓슨(Durbin-Watson) 통계값을 사용하여 노트의 문자열을 계산하고 스플라인 적합을 적용할지 또는 거부할지 결정합니다. 이와 같이 통계적 B-스플라인은 모든 데이터 피쳐를 반영하여 최소한의 노트 수를 제공합니다.
• Spline2(vx, vy, n, [vw], [u], [level]) - 데이터 vx 및 vy에 보간한 n차 B-스플라인 노트의 최적 집합을 구합니다. 여기에는 가중치 vw, 원하는 노트 u 및 기각 수준을 선택적 요소로 사용할 수 있습니다. 이 함수로 구한 벡터는 Binterp의 둘째 인수가 됩니다.
• Binterp(x, b) - x에 상응하는 B-스플라인 보간된 y 값을 구합니다. 여기에는 Spline2 함수의 출력 벡터인 b가 1차, 2차 및 3차 도함수와 함께 사용됩니다.
• DWS(b) - Spline2 함수의 출력 벡터 b에 대한 더빈-왓슨(Durbin-Watson) 통계값을 구합니다.
B-스플라인 보간을 사용하면 인접한 점 세 개를 취한 다음 해당 점을 통과하는 n차 다항식을 만들어 일련의 점을 지나는 곡선을 구할 수 있습니다. 이러한 다항식은 노트에서 서로 만나 하나의 곡선을 이룹니다. 데이터 점보다 노트 수가 적지만 y에 대한 적절한 근사값을 구할 수 있는 경우에는 데이터를 압축하는 방법으로 B-스플라인을 사용하는 것이 좋습니다.
위의 B-스플라인 함수는 B. J. Thijsse와 M. A. Hollanders가 개발한 Spline2 소프트웨어를 기반으로 하며 이는 사용이 허가되었습니다. 이 소프트웨어에 대한 자세한 내용은 http://dutsm183.stm.tudelft.nl/software/software.dita를 참조하십시오.
인수
• vx, vy는 데이터 값으로 이루어진 실수 벡터이며 길이가 같습니다.
• u는 노트가 오름차순으로 배열된 실수 벡터이고 vx보다 요소가 n − 1개 적습니다. 노트는 개별 B-스플라인 다항식이 서로 만나는 지점을 나타내는 값입니다. 다른 스플라인의 경우에는 이와 달리 노트와 x 값이 동일합니다. u의 첫째 요소는 vx의 첫째 요소보다 작거나 같아야 합니다. u의 마지막 요소는 vx의 마지막 요소보다 크거나 같아야 합니다.
• n은 정수 1, 2 또는 3이며 B-스플라인에 사용되는 조각 선형(n = 1), 2차(n = 2) 또는 3차(n = 3) 다항 적합식을 나타냅니다.
• vw는 vx 및 vy와 길이가 같은 스플라인에 대한 가중치로 이루어진 선택적 벡터입니다.
• level은 기각 수준이며 0 이상 1 이하의 백분율로 표현됩니다.
• b는 Spline2를 통해 생성되는 벡터입니다.
• x는 보간 곡선을 계산할 독립 변수 값입니다. 최상의 결과를 얻으려면 vx 값으로 지정되는 범위 내에 x 값이 있어야 합니다.