티스토리 뷰
Linear Transformation
Linear Transformation 은 Linear Mapping, Linear Map 선형변환, 선형사상, 선형함수 등으로도 불린다.
선형변환은 행렬로 표현될 수 있는데, 예를 들어 n차원 벡터 $\mathbf{x}$ (m x n) 행렬 A를 곱하면 m차원 벡터가 얻어진다. 행렬A로 인해 다른 벡터로 옮기는 변환이 결정된 것이다. 단순한 하나의 예시로는 점을 점으로 옮기는 이미지가 연상되지만 공간이 행렬로 인해 어떻게 변하는지 떠올려야한다.
$A=\begin{pmatrix} 1&-0.3\\0.7&0.6 \end{pmatrix}$ 와 같은 행렬에 의해 공간이 어떻게 변하는지 떠올리기 위해서는
다음과 같이 생각할 수 있다.
$e_{1} = \begin{pmatrix} 1\\0 \end{pmatrix} e_{2}= \begin{pmatrix} 0\\1 \end{pmatrix} $ 을 각각 $\begin{pmatrix} 1\\-0.7 \end{pmatrix}$와 $\begin{pmatrix} -0.3\\0.6 \end{pmatrix}$ 로 이동시킨다.
행렬의 곱도 이처럼 이해할 수 있다. $\mathbf{z}=BA\mathbf{x}$ 에서 $\mathbf{x}$를 A를 이용해 $\mathbf{y}$로 변환한다. $\mathbf{y}$를 B를 이용해 $\mathbf{z}$로 변환한다.
이 과정을 행렬곱 BA를 이용해 한번에 z로 변환하는 것이다.
Ax=b 에 대한 해석도 두 가지로 볼 수 있다.
- A column들에 대한 linear combination으로 b가 만들어진다.
- A에 의해 x가 b로 transform 된다.
2번의 관점에서 보면 행렬 A(m x n)에 의한 transform은 $T : \mathbb{R}^{n} \to \mathbb{R}^{m}$
아래 그림에서 transformation T에 의한 x의 이미지는 T(x)이다.
T는 행렬 A에 의해 정의역(Domain)에서 공역(Codomain) 으로 매핑이 되며
만약 모두 독립이라면 공역은 치역(Range)과 같다.
예를 들어 3 x 3 행렬에서 모두 독립이라면 $\mathbb{R}^{3}$를 span하며 공역=치역 이다.
다만 2개만 독립이라면 평면이라고 볼 수 있기에 치역은 공역의 일부라 볼 수 있다.
위의 transformation에서 Linear Transformation이 되기 위한 조건은 다음과 같다.
- f(u+v)=f(u)+f(v)
- f(cu)=cf(u)
이 조건을 확장하면 T가 선형이면 $T(c_{1}v_{1}+\cdots +c_{p}v_{p})=c_{1}T(v_{1})+ \cdots +c_{p}T(v_{p})$
때문에 T(x)=$\mathbf{Ax}$로 표현되는 것은 모두 Linear Transform이다.
2D Transformation
위치를 평면이동하는 translation
translation에 회전까지 고려한 Euclidean
scale까지 고려한 similarity
변형이되었지만 평행이 유지가 된 affine 변환
투영과 관련된 projective 변환 이 있다.
1. Translation
크기, 각도, 면적을 유지하며 위치만 이동하는 경우이다.
x' = x + t_{x}
y' = y+t_{y}
다만 translation을 2x2 행렬 M으로 표현하기에는 문제가 따르며
이를 해결하기 위해서는 homogeneous 좌표계가 필요하다.
알다시피 성분 1을 추가하여 3차원 형태로 나타내며
결국 translation 변환 행렬은 다음과 같이 정의할 수 있다.
$\begin{bmatrix}
x'\\
y'\\1
\end{bmatrix}=
\begin{bmatrix}
1 & 0 & t_{x} \\
0 & 1 & t_{y} \\
0 & 0 & 1 \\
\end{bmatrix}
\begin{bmatrix}
x \\
y \\1
\end{bmatrix} $
이처럼 3x3 변환행렬로 변경되어야 변환이 가능하다.
2. 다양한 변환
3. Matrix Composition
여러 변환을 하나의 행렬곱으로 표현할 수 있다.
아래와 같은 예시를 보면 회전변환, 스케일링, Translation을 행렬곱을 통해 적용하는 것을 볼 수 있다.
$\begin{bmatrix}x'\\ y'\\1\end{bmatrix}=
\begin{bmatrix}1 & 0 & t_{x} \\0 & 1 & t_{y} \\0 & 0 & 1 \\\end{bmatrix}
\begin{bmatrix}a & 0 & 0 \\0 & b & 0 \\0 & 0 & 1 \\\end{bmatrix}
\begin{bmatrix}\cos\theta & -\sin\theta & 0 \\\sin\theta &\cos\theta & 0 \\0&0&1\end{bmatrix}
\begin{bmatrix}x \\y \\1\end{bmatrix} $
회전변환 행렬(2차원, 3차원)
2차원에서 회전 변환 행렬은 다음과 같다.
- $R(\theta)=\begin{bmatrix}
\cos\theta & -\sin\theta \\
\sin\theta &\cos\theta \\
\end{bmatrix} $ - 각도 $\theta$ 만큼 반시계 방향으로 회전한다고 생각할 수 있다.
혹은 $ e_{1} = \begin{pmatrix} 1\\0 \end{pmatrix} e_{2}= \begin{pmatrix} 0\\1 \end{pmatrix} $ 가 이동한다고 생각하는 것이 더 좋아보인다.
증명
2차원 회전행렬에서 파생된 것으로 직관적으로 이해할 수 있는데,
기준이 되는 축의 값이 변하지 않도록 되어있다.
좌표계 변환
한 공간에서 취할 수 있는 기저는 다양하다. 때문에 문제에 따라 알맞은 basis를 취하여 쉬운 문제로 만들 수 있다.
$\mathbb{R}^{2}$에서 $\mathbf{x}=\begin{bmatrix}4\\-2 \end{bmatrix}$를 다른 basis B: $\mathbf{b}_{1} =\begin{bmatrix} 1 \\ -1 \end{bmatrix}, \mathbf{b}_{2} =\begin{bmatrix} 1 \\ 1 \end{bmatrix}$ 를 사용한다면 다른 좌표로 나타날 것이다.
$ [\mathbf{x}]_{\mathbf{B}}=\begin{bmatrix}3\\1 \end{bmatrix} $ 로 좌표가 바뀌었지만 같은 벡터이다.
변환 방법은 $\begin{bmatrix}1 & 1 \\ -1 & 1 \\ \end{bmatrix}
\begin{bmatrix} x_{1} \\x_{2} \end{bmatrix} =
\begin{bmatrix} 4 \\ -2 \end{bmatrix} $ 에서 $x_{1},x_{2}$ 를 구하여 B 좌표계로 변환할 수 있다.
좌표계변환 행렬은 일반적인 변환행렬의 역이라고 할 수 있다.
직관적으로 보자면 일반적인 변환 행렬은 좌표를 옮기지만 좌표계를 옮기게 되면 본래 좌표가 반대로 이동하는 것처럼 보인다.
이것이 바로 역행렬로 변환이 수행되는 것이다.
변환 행렬 찾기
affine의 경우
projective의 경우
행렬 9개 파라미터에서 scale을 고려하지 않으면 8개의 원소를 결정해야함.
4개 쌍 점으로 h 벡터와 8 x 9 행렬 곱 식이 나옴. (h벡터는 변환 행렬 H의 요소들)
행렬에 대해 SVD(singular value decomposition) 계산 -> H의 norm을 1로 제약? ->의미 없는 해 없게

가장 작은 singular vector 를 찾아 행렬 찾을 수 있음
RANSAC 알고리즘
RANSAC 알고리즘을 이용한 사영 행렬
특징점 쌍 랜덤 결정, 변환 후 inlier 결정?
inlier, outlier 선별, inlier에 의한 파라미터 결정
(inlier: 두 이미지에서 겹치는 point, outlier: 두 이미지에서 겹치지 않는 포인트)
랜덤 샘플을 이용한 반복
4개의 쌍 선정 필요
inlier 개수 판단
예시 : 파노라마 이미지에 적용 가능
이미지 와핑 Warping
시점이 변한듯한 효과를 주는 기술
1. forward
T에 의해 변환 후 결정, 때문에 변환 후 픽셀에 포인트가 존재하지 않을 수도 있음
기존 이미지에 T
2. backward
모든 픽셀 사용?
결과 이미지에서 T inverse 적용
픽셀에 위치하지 않을 때 splatting 사용
-> 주변 픽셀에 적당한 가중치를 적용해 퍼뜨림.
'전기전자공학 > 수학' 카테고리의 다른 글
행렬식과 Eigenvalue & Eigenvector (0) | 2025.03.05 |
---|---|
[선형대수] Gram-Schmidt process와 QR 분해 (0) | 2025.02.10 |
인공지능을 위한 선형대수 & 확률과 통계 (0) | 2025.02.04 |
[수학] 자연성장, 감소/로지스틱 방정식 (0) | 2020.05.31 |
[수학] 미분방정식, 방향장, 오일러 방법 (0) | 2020.05.31 |
[수학] 리만합과 근삿값 (0) | 2020.05.31 |
[수학] 특이적분 (0) | 2020.05.31 |
[수학] 삼각함수와 적분 (0) | 2020.05.31 |
- Total
- Today
- Yesterday
- 배송기간
- 계산방법
- 메쉬 밴드
- 맛집
- Liiv M
- 알뜰폰요금제
- 파스타
- 문서 스캔
- a모바일
- 카카오페이
- 티스토리챌린지
- 시계 줄
- 리브엠
- 10만포인트
- 네이버페이
- 리브모바일
- 북문
- 방향장
- 알리익스프레스
- 방어동작
- 알뜰 요금제
- 경북대
- f-94w
- 교체
- 오블완
- 카시오
- f-91w
- mealy
- 할인
- 타란튤라
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |