본문 바로가기
Programming/Eigen

Eigen3 Vector

by 항공학도 2020. 7. 1.

참고자료: https://dritchie.github.io/csci2240/assignments/eigen_tutorial.pdf    
                https://eigen.tuxfamily.org/dox/index.html 

Computer vision및 Deep-learning관련 open-source들을 살펴보다보면, Eigen으로 작성된 코드들이 많이 보인다. 하지만 Eigen library가 정확히 어떤 기능을하고 어떻게 쓸 수 있는지 알지 못하기 때문에 코드를 이해하는데 어려움이 있었다. 이 글에서는 이 Eigen Library에 대해 공부한 내용에 대하여 작성한다. 

이전글(Eigen3)에서 작성했던 기본 코드에 추가하여 Eigen라이브러리를 사용한 Vector 연산에 대해 알아보도록 하겠다. 작성된 코드와 실행결과를 통해서 확인해 본다.

Eigen에서의 Vector는 행이 1인 matrix이며 다음과 같이 정의가 되어 있다.

typedef Matrix<float, 3, 1> Vector3f;
typedef Matrix<double, 4, 1> Vector4d;

정의에 따라 행렬과 동일한 연산이 가능하고 Vector3f, Vector4d와 같이 크기의 정의는 Vector이므로 one-dimensional length를 갖는다. 예를들어 Vector3f는 3개의 elements 를 갖는 float형 vector이다.

그러므로 Initialization의 경우 Matrix와 유사한 방식으로 Vector의 표현을 써서 다음과 같이 할 수 있다.

Eigen::VecorXd waypoints = Eigen::VectorXd::Zero(missionLength,1);

 

'Programming > Eigen' 카테고리의 다른 글

Eigen3 Matrix Operations - 행렬연산  (0) 2020.07.01
Eigen3 Matrices - 행렬변수 선언  (2) 2020.07.01
Eigen3 란?  (0) 2020.06.09

댓글