Discover millions of ebooks, audiobooks, and so much more with a free trial

Only $11.99/month after trial. Cancel anytime.

직접 선형 변환: 컴퓨터 비전의 실제 응용 및 기술
직접 선형 변환: 컴퓨터 비전의 실제 응용 및 기술
직접 선형 변환: 컴퓨터 비전의 실제 응용 및 기술
Ebook165 pages1 hour

직접 선형 변환: 컴퓨터 비전의 실제 응용 및 기술

Rating: 0 out of 5 stars

()

Read preview

About this ebook

직접 선형 변환이란 무엇입니까


DLT라고도 알려진 직접 선형 변환은 일련의 유사 관계를 작업으로 사용하여 변수 세트를 해결하는 알고리즘입니다. 세트. 사영기하학 분야에서는 이런 종류의 관계가 꽤 자주 접하게 됩니다. 실제 상황에 적용할 수 있는 예로는 호모그래피, 장면의 3차원 점 간의 관계, 핀홀 카메라의 이미지 평면에 대한 투영 등이 있습니다.


혜택을 받는 방법


(I) 다음 주제에 대한 통찰력 및 검증:


1장: 직접 선형 변환


2장: 선형 지도


3장: 선형 부분공간


4장: 촐레스키 분해


5장: 역행렬


6장: 2차 형식


7장: 동차 함수


8장: 커널(선형 대수학)


9장: Plücker 좌표


10장: 제어 이론의 TP 모델 변환


(II) 직접 선형 변환에 관한 대중의 주요 질문에 답합니다.


(III) 다양한 분야에서 직접 선형 변환을 사용하는 실제 사례.


책은 누구를 위한 책인가요?


전문가, 학부 및 대학원생, 열성팬, 취미생활자, 모든 종류의 직접 선형 변환에 대한 기본 지식이나 정보를 뛰어넘기를 원하는 사람들.


 


 

Language한국어
Release dateApr 30, 2024
직접 선형 변환: 컴퓨터 비전의 실제 응용 및 기술

Read more from Fouad Sabry

Related to 직접 선형 변환

Titles in the series (100)

View More

Related ebooks

Reviews for 직접 선형 변환

Rating: 0 out of 5 stars
0 ratings

0 ratings0 reviews

What did you think?

Tap to rate

Review must be at least 10 words

    Book preview

    직접 선형 변환 - Fouad Sabry

    1장: 직접 선형 변환

    변수 집합은 DLT(Direct Linear Transformation)라는 기술을 사용하여 일련의 유사성 관계로 해결할 수 있습니다.

    {\mathbf {x}}_{{k}}\propto {\mathbf {A}}\,{\mathbf {y}}_{{k}} 때문에 \,k=1,\ldots ,N

    여기서 {\mathbf {x}}_{{k}} 와 {\mathbf {y}}_{{k}} 는 알려진 벡터로, \,\propto 알 수 없는 스칼라 곱셈까지의 동등성을 나타내며 \mathbf {A} 풀어야 할 미지수를 포함하는 행렬(또는 선형 변환)입니다.

    투영 기하학에서 이것은 일반적인 종류의 관계입니다. 동형 이의어와 3D 장면 포인트와 핀홀 카메라 프로젝션 간의 관계가 그러한 두 가지 예입니다.

    간단히 말해서 선형 방정식 시스템

    {\mathbf {x}}_{{k}}={\mathbf {A}}\,{\mathbf {y}}_{{k}} 때문에 \,k=1,\ldots ,N

    예를 들어, 행렬 {\mathbf {X}}={\mathbf {A}}\,{\mathbf {Y}} {\mathbf {X}} 과 벡터를 포함하는 행렬 방정식으로 다시 작성하여 해결할 수 {\mathbf {Y}} 있습니다 {\mathbf {x}}_{{k}} {\mathbf {y}}_{{k}} .

    이 문제에 대한 답은 하나뿐이므로

    {\mathbf {A}}={\mathbf {X}}\,{\mathbf {Y}}^{{T}}\,({\mathbf {Y}}\,{\mathbf {Y}}^{{T}})^{{-1}}.

    방정식이 과다 또는 과소 결정된 경우 솔루션도 설명할 수 있습니다.

    직접 선형 변환 문제와 앞서 언급한 일반적인 예제의 차이점은 정의 방정식의 왼쪽과 오른쪽을 구분하는 곱셈 계수가 매개변수 k에 따라 달라진다는 것입니다.

    따라서 \mathbf {A} 표준 경우와 같이 계산할 수 없습니다.

    대신, 이 접근 방식에서는 유사성 관계가 일반 선형 균질 방정식으로 변환됩니다.

    직접 선형 변환(DLT) 알고리즘은 유사성 방정식을 동종 선형 방정식으로 다시 작성하고 확립된 방법을 사용하여 푸는 것을 결합합니다.

    Ivan Sutherland는 DLT를 개발한 것으로 알려져 있습니다.

    라고 가정합니다 {\displaystyle k\in \{1,...,N\}} .

    와 두 개의 알려진 벡터가 {\displaystyle \mathbf {x} _{k}=(x_{1k},x_{2k})\in \mathbb {R} ^{2}} 되고 {\displaystyle \mathbf {y} _{k}=(y_{1k},y_{2k},y_{3k})\in \mathbb {R} ^{3}} 다음과 같은 행렬 2\times 3 을 찾으려고 합니다 \mathbf {A} .

    \alpha _{{k}}\,{\mathbf {x}}_{{k}}={\mathbf {A}}\,{\mathbf {y}}_{{k}}

    여기서 \alpha _{{k}}\neq 0 는 방정식 K와 관련된 알 수 없는 스칼라 인자입니다.

    반대칭 행렬을 정의하여 자유 스칼라를 제거하고 동차 방정식을 생성합니다.

    {\mathbf {H}}={\begin{pmatrix}0&-1\\1&0\end{pmatrix}}

    방정식의 양쪽을 {\mathbf {x}}_{{k}}^{{T}}\,{\mathbf {H}} 왼쪽에서부터 곱합니다.

    {\displaystyle {\begin{aligned}(\mathbf {x} _{k}^{T}\,\mathbf {H} )\,\alpha _{k}\,\mathbf {x} _{k}&=(\mathbf {x} _{k}^{T}\,\mathbf {H} )\,\mathbf {A} \,\mathbf {y} _{k}\\\alpha _{k}\,\mathbf {x} _{k}^{T}\,\mathbf {H} \,\mathbf {x} _{k}&=\mathbf {x} _{k}^{T}\,\mathbf {H} \,\mathbf {A} \,\mathbf {y} _{k}\end{aligned}}}

    이제 신비한 스칼라가 없는 다음과 같은 균질 방정식이 가까이 있기 {\mathbf {x}}_{{k}}^{{T}}\,{\mathbf {H}}\,{\mathbf {x}}_{{k}}=0, 때문입니다

    {\displaystyle \mathbf {x} _{k}^{T}\,\mathbf {H} \,\mathbf {A} \,\mathbf {y} _{k}=0}

    이 방정식 집합에서 \mathbf {A} 풀려면 벡터 {\mathbf {x}}_{{k}} 및 {\mathbf {y}}_{{k}} 행렬 \mathbf {A} 의 요소를 고려하십시오.

    {\mathbf {x}}_{{k}}={\begin{pmatrix}x_{{1k}}\\x_{{2k}}\end{pmatrix}} , {\mathbf {y}}_{{k}}={\begin{pmatrix}y_{{1k}}\\y_{{2k}}\\y_{{3k}}\end{pmatrix}} 및 {\mathbf {A}}={\begin{pmatrix}a_{{11}}&a_{{12}}&a_{{13}}\\a_{{21}}&a_{{22}}&a_{{23}}\end{pmatrix}}

    이 경우 위의 동차 방정식은 다음과 같이 단순화됩니다.

    0=a_{{11}}\,x_{{2k}}\,y_{{1k}}-a_{{21}}\,x_{{1k}}\,y_{{1k}}+a_{{12}}\,x_{{2k}}\,y_{{2k}}-a_{{22}}\,x_{{1k}}\,y_{{2k}}+a_{{13}}\,x_{{2k}}\,y_{{3k}}-a_{{23}}\,x_{{1k}}\,y_{{3k}}

    때문에 \,k=1,\ldots ,N.

    행렬 형식은 다음과 같이 잘 작동합니다.

    0={\mathbf {b}}_{{k}}^{{T}}\,{\mathbf {a}} 때문에 \,k=1,\ldots ,N

    여기서 {\mathbf {b}}_{{k}} 와 \mathbf{a} 둘 다 로 정의되는 6차원 벡터입니다.

    {\mathbf {b}}_{{k}}={\begin{pmatrix}x_{{2k}}\,y_{{1k}}\\-x_{{1k}}\,y_{{1k}}\\x_{{2k}}\,y_{{2k}}\\-x_{{1k}}\,y_{{2k}}\\x_{{2k}}\,y_{{3k}}\\-x_{{1k}}\,y_{{3k}}\end{pmatrix}} 그리고 {\mathbf {a}}={\begin{pmatrix}a_{{11}}\\a_{{21}}\\a_{{12}}\\a_{{22}}\\a_{{13}}\\a_{{23}}\end{pmatrix}}.

    이 시점에서 하나의 방정식과 6개의 변수가 있습니다. 행렬 형식은 동차 방정식 시스템을 표현하는 데 사용할 수 있습니다.

    {\mathbf {0}}={\mathbf {B}}\,{\mathbf {a}}

    여기서 \mathbf {B} 는 N\times 6 행에 알려진 벡터를 보유하는 행렬 {\mathbf {b}}_{{k}} 입니다.

    미지의 것은 \mathbf{a} , 예를 들어, 의 특이값 분해에 의해 결정될 수 있다 \mathbf {B} ; \mathbf{a} 는 0과 같은 특이값에 대응하는 \mathbf {B} 오른쪽 특이 벡터 입니다.

    \mathbf{a} 일단 결정되면 matrix의 요소는 \mathbf {A} vector 에서 재배열 될 수 있습니다 \mathbf {a} .

    or \mathbf{a} 의 스케일링 \mathbf {A} 은 중요하지 않습니다(0이 아니어야 한다는 점 제외) 정의 방정식은 이미 알 수 없는 스케일링을 허용하기 때문입니다.

    실제로 벡터와 노이즈를 {\mathbf {x}}_{{k}} {\mathbf {y}}_{{k}} 포함할 수 있으며, 이는 유사성 방정식이 대략적으로만 유효하다는 것을 의미합니다.

    따라서 균질 방정식을 \mathbf{a} 정확하게 푸는 {\mathbf {0}}={\mathbf {B}}\,{\mathbf {a}} 벡터가 없을 수 있습니다.

    이러한 상황에서, 의 가장 작은 특이값에 대응하는 우측 특이 벡터로 \mathbf{a} 선택하여 총 최소 제곱해를 사용할 수 있습니다. {\mathbf {B}}.

    위의 예에는 {\mathbf {x}}_{{k}}\in {\mathbb {R}}^{{2}} 와 {\mathbf {y}}_{{k}}\in {\mathbb {R}}^{{3}} 가 있지만 유사성 관계를 동종 선형 방정식으로 다시 작성하는 일반적인 전략은 와 에 대한 임의의 차원으로 일반화할 수 있습니다. {\mathbf {x}}_{{k}} {\mathbf {y}}_{{k}}.

    If {\mathbf {x}}_{{k}}\in {\mathbb {R}}^{{2}} 와 {\mathbf {y}}_{{k}}\in {\mathbb {R}}^{{q}} 이전 표현식은 여전히 방정식으로 이어질 수 있습니다.

    0={\mathbf {x}}_{{k}}^{{T}}\,{\mathbf {H}}\,{\mathbf {A}}\,{\mathbf {y}}_{{k}} 때문에 \,k=1,\ldots ,N

    여기서 \mathbf {A} now는 2\times q. 다음과 같습니다. 각 k 는 알 수 없는 요소에 2q 하나의 방정식을 제공하며 \mathbf {A} 함께 이러한 방정식은 알려진 {\mathbf {B}}\,{\mathbf {a}}={\mathbf {0}} 행렬 N\times 2\,q 및 알려지지 않은 \mathbf {B} 2q차원 벡터에 대해 {\mathbf {a}}. 작성될 수 있습니다. 이 벡터는 이전과 유사한 방식으로 찾을 수 있습니다.

    가장 일반적인 경우 {\mathbf {x}}_{{k}}\in {\mathbb {R}}^{{p}} 와 {\mathbf {y}}_{{k}}\in {\mathbb {R}}^{{q}} .

    이전과 비교했을 때 가장 큰 차이점은 이제 행렬이 \mathbf {H} p \times p 반대칭이라는 것입니다.

    {\displaystyle p>2} 이러한 행렬의 공간이 더 이상 1차원이 아닐 때 측정 가능한 크기를 갖습니다.

    M={\frac {p\,(p-1)}{2}}.

    이것은 k의 모든 값에 대해 유형의 M 동차 방정식이 있음을 시사합니다.

    0={\mathbf {x}}_{{k}}^{{T}}\,{\mathbf {H}}_{{m}}\,{\mathbf {A}}\,{\mathbf {y}}_{{k}} for \,m=1,\ldots ,M 및 for \,k=1,\ldots ,N

    여기서 {\mathbf {H}}_{{m}} 는 반대칭 행렬 p \times p 공간의 M차원 기저 입니다.

    p = 3인 경우 다음 세 개의 행렬 을 {\mathbf {H}}_{{m}} 선택할 수 있습니다

    {\mathbf {H}}_{{1}}={\begin{pmatrix}0&0&0\\0&0&-1\\0&1&0\end{pmatrix}} , , {\mathbf {H}}_{{2}}={\begin{pmatrix}0&0&1\\0&0&0\\-1&0&0\end{pmatrix}} {\mathbf {H}}_{{3}}={\begin{pmatrix}0&-1&0\\1&0&0\\0&0&0\end{pmatrix}}.

    이 상황에서 균질 선형 방정식은 다음과 같이 표현할 수 있습니다.

    {\mathbf {0}}=[{\mathbf {x}}_{{k}}]_{{\times }}\,{\mathbf {A}}\,{\mathbf {y}}_{{k}} 때문에 \,k=1,\ldots ,N

    여기서 [{\mathbf {x}}_{{k}}]_{{\times }} 는 벡터 외적의 행렬 표현입니다.

    이 마지막 방정식은 벡터 값 다양성입니다. 왼쪽은 의 0 요소입니다 {\mathbb {R}}^{{3}} .

    k의 각 값은 의 알 수 없는 요소에서 세 개의 동차 선형 방정식을 제공합니다 \mathbf {A} .

    그러나 [{\mathbf {x}}_{{k}}]_{{\times }} has rank = 2이므로 선형 독립 방정식의 최대 개수는 2입니다.

    따라서 실제로는 세 행렬 중 두 개만 사용하는 것이 일반적입니다 {\mathbf {H}}_{{m}} (예 : m = 1, 2).

    그러나 방정식 간의 선형 종속성은 에 따라 달라 {\mathbf {x}}_{{k}} 지므로 불리한 상황에서는 선택하는 것이 더 나은 옵션이었을 것입니다(예: m=2,3).

    따라서 방정식이 얼마나 많은지 중요하지 않다면 행렬을 구성할 때 세 방정식을 모두 사용하는 것이 더 나을 수 있습니다 \mathbf {B} .

    결과 균질 선형 방정식 간의 선형 종속성은 p > 2의 경우에 대한 일반적인 관심사이며 반대칭 행렬 집합을 줄 이거나 {\mathbf {H}}_{{m}} 결정에 필요한 것보다 커지 \mathbf {B} 도록 허용하여 처리해야 합니다. {\mathbf {a}}.

    {챕터 1 종료}

    제 2 장: 선형 맵

    수학, 특히 선형 대수학에서 선형 맵 (또는 선형 매핑)은 선형 변환, 벡터 공간의 동형 또는 일부 컨텍스트에서는 선형 함수)가 V\to W 벡터 덧셈 및 스칼라 곱셈의 연산을 보존하는 두 벡터 공간 간의 매핑입니다.

    링에 대한 모듈의 보다 일반적인 경우는 동일한 이름과 정의를 사용합니다. Homomorphism of Modules를 찾습니다.

    선형 동형은 두 벡터 공간 사이의 이분법입니다.

    선형 {\displaystyle V=W} 내형성(Linear endomorphism)은 지도의 또 다른 이름입니다.

    이 상황을 선형 연산자라고도 합니다. 그러나 선형 연산자라는 문구가 의미하는 바를 정의하는 몇 가지 뚜렷한 전통이 있습니다. 예를 들어, 그것은 그것을 강조하는 데 사용할 수 V 있습니다 그리고 W 실수 벡터 공간(반드시 와 는 것은 아님 {\displaystyle V=W} ) 또는 함수 공간임을 강조하는 데 사용할 수 V 있습니다  .  이는 기능 분석의 표준 관행입니다.

    선형 함수는 일부 상황에서 선형 맵과 동일한 것을 의미 할 수 있지만 분석은 그렇지 않다는 것을 보여줍니다.

    V를 W에 선형으로 매핑할 때 V의 시작점은 항상 W의 시작점에 매핑됩니다. 또한 V의 원점을 통과하는 평면을 W의 원점을 통과하는 평면, W의 원점을 통과하는 선 또는 W의 원점만 매핑하는 것과 같이 선형 부분공간을 V에서 W(잠재적으로 더 낮은 차원)로 전송합니다. 회전과 반사는 행렬을 사용하여 표현할 수 있는 선형 변환의 두 가지 예입니다.

    선형 매핑은 범주 이론 전문 용어로 된 벡터 공간의 형태입니다.

    V 같은 필드에 벡터 공간을 W 설정합니다 K .

    함수는 f:V\to W 두 벡터와 스칼라 에 대해 다음 두 조건이 충족되는 {\textstyle \mathbf {u} ,\mathbf {v} \in V} 경우 선형 맵 {\displaystyle c\in K} 이라고 합니다.

    추가 또는 추가 기능

    {\displaystyle f(\mathbf {u} +\mathbf {v} )=f(\mathbf {u} )+f(\mathbf {v} )}

    차수-1 균질성/스칼라 곱 연산

    {\displaystyle f(c\mathbf {u} )=cf(\mathbf {u} )}

    결과적으로 선형 맵은 작업을 보존한다고 말합니다. 다시 말하자면, 선형 맵이 산술 및 곱셈 연산 전(인스턴스의 오른쪽) 또는 뒤(예제의 왼쪽)에 적용되는지 여부는 차이가 없습니다.

    더하기 기호(+)의 교환 속성으로 인해 모든 벡터 {\textstyle \mathbf {u} _{1},\ldots ,\mathbf {u} _{n}\in V} 와 스칼라 {\textstyle c_{1},\ldots ,c_{n}\in K,} 에 대해 다음과 같은 동등성이 유지됩니다.

    {\displaystyle f(c_{1}\mathbf {u} _{1}+\cdots +c_{n}\mathbf {u} _{n})=c_{1}f(\mathbf {u} _{1})+\cdots +c_{n}f(\mathbf {u} _{n}).}

    선형 조합은 이러한 지도에 의해 보존되므로 그 이름이 붙습니다.

    벡터 공간의 0 요소를 나타내 V 고 W 각각 {\textstyle \mathbf {0} _{V}} 에 의해 {\textstyle \mathbf {0} _{W}} , 그것은 다음과 같이 한다 {\textstyle f(\mathbf {0} _{V})=\mathbf {0} _{W}.} 하자 c=0 그리고 {\textstyle \mathbf {v} \in V} 차수 1의 균질성을 위한 방정식에서:

    {\displaystyle f(\mathbf {0} _{V})=f(0\mathbf {v} )=0f(\mathbf {v} )=\mathbf {0} _{W}.}

    Enjoying the preview?
    Page 1 of 1