How many rotational parameters are required for 4D space?

Research/Robotics 2015. 3. 11. 11:49

For N-dimensional space the number of angles required is quadratic N(N-1)/2. The Wikipedia page for Euler angles has the explanation.


* Ref :

[1] https://moocs.qut.edu.au/courses/814/learn

설정

트랙백

댓글

Euler angles and Cardan angles

Research/Robotics 2015. 3. 11. 11:49

Extrinsic rotation (fixed angle)

  • 12 representations


Intrinsic rotation

  • Euler angles (z-x-z, x-y-x, y-z-y, z-y-z, x-z-x, y-x-y)
  • Tait–Bryan angles (x-y-z, y-z-x, z-x-y, x-z-y, z-y-x, y-x-z).
    (cardan angles, roll-pitch-yaw, ...)


* Ref :

[1] https://moocs.qut.edu.au/courses/814/learn

[2] http://en.wikipedia.org/wiki/Euler_angles

설정

트랙백

댓글

why column vectors of rotation matrix is new axis ?

Research/Robotics 2015. 3. 11. 11:08



We can recognize the rotation matrix is the transposed matrix of the upper equation.


* Ref :

[1] https://moocs.qut.edu.au/courses/814/learn

설정

트랙백

댓글

why use a homogeneous transform matrix?

Research/Robotics 2015. 3. 9. 11:47

Pose is described by just 3 numbers:

    • Offset in the x-direction
    • Offset in the y-direction
    • A rotation angle

The homogeneous transformation is inefficient in this respect, requiring three times as many numbers as actually required. Some of those 9 numbers have fixed values like 0 or 1, and others repeated or repeated with a different sign. Its advantage is the ability to compound poses by matrix-matrix multiplication, or transform vectors by matrix-vector multiplication. These operations are very convenient to express in an environment like MATLAB, and with modern computers the extra computation required is almost insignificant.



* Ref :

[1] https://moocs.qut.edu.au/courses/814/learn

설정

트랙백

댓글

difference between Euclidean and Cartesian

Research/Robotics 2015. 3. 4. 11:25

Euclidean geometry 

The description of 2D and 3D geometrical shapes in terms of fundamental axioms


Cartesian geometry 

The description of 2D and 3D geometrical shapes in terms of algebraic equations



* Ref 

[1] https://moocs.qut.edu.au/courses/814/learn?edcast_ref=16351

[2] https://moocs.qut.edu.au/courses/791/learn

설정

트랙백

댓글

Eigen Vectors and Eigen Values

Research/Mathmatics 2015. 2. 27. 11:43

아래 사이트의 동영상을 보면 정말 좋다.





https://www.khanacademy.org/math/linear-algebra/alternate_bases/eigen_everything/v/linear-algebra-finding-eigenvectors-and-eigenspaces-example


'Research > Mathmatics' 카테고리의 다른 글

Skew symmetric matrix  (0) 2015.04.15
What is homogeneous transform?  (0) 2015.01.16
Atan2 에 대하여.. (what is atan2?)  (0) 2015.01.08
Fourier Transform (푸리에 변환)  (0) 2014.12.02

설정

트랙백

댓글

What is homogeneous transform?

Research/Mathmatics 2015. 1. 16. 18:37

우선 homogeneous coordinate이 무엇인 지 생각해보자.

일례로, homogeneous coordinate에서는 (x, y)라는 하나의 포인트를 (x, y, 1)이라는 포인트로 표현한다.

이것은 projective plane 상의 점으로 생각하는 것이다. 조금 더 일반적으로 표현하자면 (wx, wy, w)로 표현할 수 있다. (하나의 표현으로 딱 정해진 것은 아님)

아래 페이지들을 보면 정말 설명이 잘 되어있기 때문에 나중에 다시 정리하도록 하자..


* Ref

http://blog.daum.net/shksjy/229

http://darkpgmr.tistory.com/78




Pose is described by just 3 numbers:

    • Offset in the x-direction
    • Offset in the y-direction
    • A rotation angle

The homogeneous transformation is inefficient in this respect, requiring three times as many numbers as actually required. Some of those 9 numbers have fixed values like 0 or 1, and others repeated or repeated with a different sign. Its advantage is the ability to compound poses by matrix-matrix multiplication, or transform vectors by matrix-vector multiplication. These operations are very convenient to express in an environment like MATLAB, and with modern computers the extra computation required is almost insignificant.








In homogeneous coordinates a point and a line, on a plane, can both be represented by a 3-element vector.

An advantage of using the homogenous form is that it’s very easy to represent a line that is vertical where in Cartesian coordinates, that means that the grading of the line is equal to infinity. In homogeneous form, we treat that situation very simply and conveniently. We don’t need to introduce any infinities.

We also might be interested in how to describe a line that joins two points. So here we have two points and here’s a line that passes through those two points. Then the homogenous representation of the line which remember is the three vector is given simply by the cross-product of the two points that lie on the line. So a very, very simple way of finding the equation of a line that joins two points much, much more conveniently than it is for Cartesian coordinates.




* Ref :

[1] https://moocs.qut.edu.au/courses/814/learn

[2] https://moocs.qut.edu.au/courses/791/learn

'Research > Mathmatics' 카테고리의 다른 글

Skew symmetric matrix  (0) 2015.04.15
Eigen Vectors and Eigen Values  (0) 2015.02.27
Atan2 에 대하여.. (what is atan2?)  (0) 2015.01.08
Fourier Transform (푸리에 변환)  (0) 2014.12.02

설정

트랙백

댓글

Atan2 에 대하여.. (what is atan2?)

Research/Mathmatics 2015. 1. 8. 11:53

아래 내용은 끄적이는 것들이기 때문에 지속적으로 수정될 수 있음..

연구를 하다보면 삼각함수를 사용하게 될 경우가 많다. 

특히 기구학 등을 analytic하게 풀기 위해서는 반드시 필요한 문제가 되겠다.

이 때 sin, cos 과 함께 자주 사용되는 녀석은 atan 함수라고 할 수 잇다.

이 문제는 일례로 HTransform matrix를 통해 roll, pitch, yaw로 표현되는 orientation을 구할 때 발생할 수 있다.

생각해보자. tangent함수는 pi를 주기로 반복되는 함수다. (그림은 구글에서 퍼왔음)


따라서 2pi 범위 내에서는 해가 두 가지 존재할 수 있겠다! 

이것을 구분해 주는 방법이 필요하다는 사실을 직감할 수 있다!

(그렇지 않으면 아래와 같은 문제가 발생하겠지..)


그리고 또 한가지, tan함수는 불연속적으로 반복된다! pi/2 마다 infinite로 발산하고 있는 것을 알 수 있다.

이로 인해 우리가 고려해야 할 부분이 있다.atan의 인자로 사용되는 sin과 cos의 조합으로는 충분히 발생할 수 있는 문제가 있다는 것!

바로 분모가 0 이 되어 무한대가 발생하는 것!!

하지만 수학적으로 분모가 0이 된다는 것은 말이 되지 않는다. 

그래서 우리는 알고리즘적으로 분모가 0에 매우 가까울 경우에는 atan의 값이 ' +-(2n-1)pi/2 , n은 정수 '라고 가정할 수 있겠다!

그래서 atan을 정상적으로 사용하기 위해서는 아래와 같은 가정이 필요하게 된다.


하지만 이 모든 알고리즘을 내포하고 있는 것이 바로 atan2가 되시겠다. 짜잔!! 대단하다.

 다만 dx와 dy가 모두 0일 때에는 값이 정의되지 않음에 유의하자!

아래의 설명을 첨부한다. 굉장히 잘 설명하고 있다.





'Research > Mathmatics' 카테고리의 다른 글

Skew symmetric matrix  (0) 2015.04.15
Eigen Vectors and Eigen Values  (0) 2015.02.27
What is homogeneous transform?  (0) 2015.01.16
Fourier Transform (푸리에 변환)  (0) 2014.12.02

설정

트랙백

댓글

Sampling의 기본 개념

지난 시간 리뷰.

아래와 같은 정현파 신호가 있을 떄, 

주기적일 필요충분 조건은 f가 유리수이고, f가 k/n으로 표시되고 k와 n이 서로 소 일 때, n이 주기 값을 갖게 된다. 

그렇다면 아래와 같이 두 개의 정현파 신호의 선형 조합으로서 신호가 구성되어 있다면, 

그리고, 처음에 말한 필요충분 조건을 만족한다고 했을 때, f1 과 f2 의 최소 공배수를 주기로 갖는다.



어차피 fk는 f0와 동일한 이산시간 주파수를 갖는다. 이 때, fk는 f0의 alias 성분이라고 한다.

f가 특정한 범위 안에 있지 않은 값들은 특정한 범위 안에 있는 값으로 재해석 될 필요가 있다.

fundamental frequency 벗어나면 더 이상 unique한 표현식을 갖지 못한다.

이 fundamental frequency의 범위는 아래와 같고, 몹시 중요하다.



그런데 이 것을 잘 생각해보면, 

즉, 여기에서 우리는 아래와 같은 중요한 개념을 구할 수 있다.

sampling frequency는 최대 주파수 성분의 2배 이상이어야 한다. 

그래야 적절한 analog 신호와 이산신호 시간 사이의 관계를 구축할 수 있다. 




몇 가지 예제를 통해 점검해 보자.

우선 첫 번쨰 예제.

x1(t)는 10Hz의 주파수, x2(t)는 50Hz의 주파수를 갖는다.

이 때, sampling frequency가 100Hz는 되어야 할 텐데 40Hz밖에 되지 않는다.

즉, 문제가 발생한다는 것인데 어떻게 될 지 살펴보자.

x1(t)의 f1은 1/4, x2(t)의 f2는 5/4가 된다.  (f는 -1/2와 1/2 사이여야 하는데 f2는 이 범위 밖에 있다.)

(*이 떄, Fs/F는 샘플링 된 신호의 주파수.. 이산신호 주파수임(원래는 F라는 주파수를 갖는 아날로그 신호))

이렇게, 어떤 신호가 fundamental frequency의 범위 밖에 있을 때 (sampling frequency * 0.5)

와 같이 fundamental 주파수 내의 값과 정수의 합 표현으로 나타내면 된다.

즉, x2(t)는 5/4의 f2를 갖지만 사실은 1+1/4로 표현되어 1/4이 된다. 

즉, 이것을 물리적인 의미로 설명하자면.. x1과 x2 두 analog 신호를 40Hz로 sampling 했더니 동일한 이산시간 주파수를 갖는다는 것이다. (충분한 sampling frequency를 갖지 못했으므로... 그래서 F2는 F1의 alias 성분이 된 것이다.) 

이 현상을 주파수 도메인에서 다시 해석해보자. 

이 때, folding frequency라는 개념이 등장한다.

그리고 2번째 예제에서 볼 수 있듯, analog signal에서 이산신호로 적절히 sampling하기 위한 최소한의 주파수를 Nyquist frequency라고 한다. 


마지막 예제를 보자.


위 처럼, Fs가 충분하지 않게 sampling이 되면 다시 D/A를 했을 때 복원된 신호가 달라지게 된다. 

중간에는 fundamental frequency의 영역을 벗어난 주파수가 조절되는 과정이 있다.




'Research > Digital Signal Processing' 카테고리의 다른 글

정현파 신호  (0) 2014.12.11
주파수(frequency)란?  (0) 2014.12.11
Sampling Theorem  (0) 2014.12.11
A/D conversion (Analog to Digital) 과정  (0) 2014.12.11
신호(signal)란 무엇인가  (0) 2014.12.10

설정

트랙백

댓글

정현파 신호


A : magnitude


'Research > Digital Signal Processing' 카테고리의 다른 글

Sampling의 기본 개념  (0) 2014.12.16
주파수(frequency)란?  (0) 2014.12.11
Sampling Theorem  (0) 2014.12.11
A/D conversion (Analog to Digital) 과정  (0) 2014.12.11
신호(signal)란 무엇인가  (0) 2014.12.10

설정

트랙백

댓글