Projection onto an Axis(축에 대한 사영)
공간 상의 어떤 점이나 객체를 한 축(axis)에 대해 수직으로 내려서 투영시키는 것
이 때, 투영되는 결과물은 해당 축에 대해 수직인 선분이 된다.
위 식은 벡터 v를 벡터 u에 대해 정사영시키는 공식이다.
이를 해석하면 "벡터 v를 벡터 u와 평행한 방향으로 투영시켰을 때의 크기"를 구하는 것이다.
구체적으로, compvu는 다음과 같이 계산된다.
compvu = (uT ⋅ v) / ∥u∥
여기서 uT는 벡터 u의 전치(transpose)이며, ∥v∥는 벡터 v의 크기(norm)를 나타낸다.
예를 들어, 벡터 v가 (3, 4)이고, 벡터 u가 (1, 1)일 때, compvu는 다음과 같다.
uT = [1 1]
v = [3][4]
u의 크기는 ∥u∥ = √(1^2 + 1^2) = √2 이므로,
compvu = (uT ⋅ v) / ∥u∥ = ([1 1] ⋅ [3 4]) / √2 = (3 + 4) / √2 = 7 / √2
따라서, 벡터 v를 벡터 u에 대해 정사영시켰을 때의 크기는 7 / √2가 된다.
projvu는 벡터 v의 단위벡터와 벡터 u에 대해 정사영시켰을 때의 크기를 곱한 벡터가 된다.
projvu = (uT ⋅ v / ∥v∥) ⋅ (v/∥v∥)
벡터 v의 단위벡터 : v̂ = v / ∥v∥ = (3/5, 4/5)
즉, projvu = compvu ⋅ v̂ = (7/√2) × (3/5, 4/5) = (21/5√2, 28/5√2)
결과적으로,
따라서, 벡터 v를 벡터 u에 대해 정사영시켰을 때의 벡터는 (21/5√2, 28/5√2)
이 벡터는 벡터 u와 평행하며, 벡터 v를 벡터 u와 평행한 방향으로 투영시켰을 때의 벡터이다.
즉, 결론!
벡터 v를 정사영시킨 행렬 P = v ⋅ vT / (∥v∥)^2
여기서, vT는 벡터 v의 전치행렬을 의미하며, ∥v∥는 벡터 v의 크기(길이)를 의미
이 식의 의미는, v를 단위벡터 u로 만들어서 u 방향으로만 투영하는 행렬을 구하는 것
행렬 P는 v 방향과 수직인 벡터에 대해서는 0으로 투영되며, v 방향에 대해서는 v 방향으로 투영된다.
따라서, P를 벡터 v에 곱하면 벡터 v를 v 방향으로 정사영시킨 벡터를 얻을 수 있다.