728x90
Homogeneous Coordinate๋ฅผ ์ ์ฉํ๋ ๋ถ์ผ๋ Computer Graphics์ 3D Vision๊ณผ ๊ฐ์ด ๋ค์ฐจ์ ๋ฌผ์ฒด์ ํํ์ด ์ด๋ฃจ์ด์ง๊ณ ๋ณต์กํ ์ฐ์ฐ์ ํตํด ๋ง์ ์ ๋ณด๋์ ๋ค๋ฃจ๋ ๊ณณ์ ๋๋ค.
ํํ ๋งํ๋ Geometric Transformation๋ ๋ค์ 3๊ฐ์ง๋ฅผ ๋งํฉ๋๋ค.
1. Changing the position of points
2. Translation, scaling, Rotation
3. Animating object and camera
์ด ์ค์์ ์ ํฌ๋ 2๋ฒ์ ํด๋นํ๋ Matrix Transformation๊ณผ ๊ด๋ จ๋ ์ด๊ด์ ์ธ ๊ฐ๋ ์ ๊ณต๋ถํ๊ณ ์ ํฉ๋๋ค.
์ฒซ ๋ฒ์งธ๋ก Translation (ํํ ์ด๋) ์ ๋๋ค.
2์ฐจ์ ํ๋ฉด ์์์ x, y ์ขํ์ dx, dy ๋งํผ ๋ํ์ฌ ์ด๋์ด ์ด๋ฃจ์ด์ง๊ฒ ๋ฉ๋๋ค.
์๋์ ๊ทธ๋ฆผ์ ์ฐธ๊ณ ํ๋ฉด ์ดํดํ ์ ์์ต๋๋ค.
๋ ๋ฒ์งธ๋ก Scaling ์ ๋๋ค.
ํํ์ด๋๊ณผ ๋ฌ๋ฆฌ ๊ณฑ์ ์ ํตํด Scale ๋ณํ๊ฐ ์ด๋ฃจ์ด์ง๊ฒ ๋๋ฉฐ, Sx, Sy์ ํด๋นํ๋
์์ ๊ฐ ๋งํผ ๊ณฑํ์ฌ ๋ฌผ์ฒด์ ํฌ๊ธฐ๋ฅผ ์ผ์ ํ๊ฒ ์กฐ์ ํ๋ ๋ฐฉ๋ฒ์ ๋๋ค.
์๋ ๊ทธ๋ฆผ์์ ๋งํ๋ Uniform ์ด๋ Sx์ Sy์ ๊ฐ์ด ๊ฐ์์ ๋ค๋ฅธ ์ถ์ ๋ํ์ฌ
๋์ผํ ๊ฐ ๋งํผ ์ค์ด๋๋ ๊ฒฝ์ฐ๋ฅผ ์๋ฏธํฉ๋๋ค.
์ธ ๋ฒ์งธ๋ก Rotation ์ ๋๋ค.
์ด ๊ฒฝ์ฐ ํ๋ผ๋ฏธํฐ๋ ๊ฐ๋์ ํด๋นํ๋ ๊ฐ์ผ๋ก cosin๊ณผ sine ์ ์ด์ฉํ์ฌ ์ขํ๊ณ๋ฅผ ํํํ๊ฒ ๋ฉ๋๋ค.
์๊ณ ๋ฐ๋๋ฐฉํฅ์ผ๋ก θ ๋งํผ ํ์ ํ ๊ฒฝ์ฐ x์ ์ขํ๋ cos θ, y์ ์ขํ๋ sin θ๋ก ๋ณํ๊ฒ ๋ฉ๋๋ค.
์ด๋ ๊ธฐ์กด์ ์ขํ๋ฅผ (1,0) ์ด๋ผ๊ณ ํ๋ฉด (cos θ, sin θ)๊ฐ ๋๊ณ (0,1)์ ๊ฒฝ์ฐ (-sin θ, cos θ) ์ด๋ฏ๋ก
2D์ ๊ฒฝ์ฐ ((cos θ, sin θ) (-sin θ, cos θ)) ํ๋ ฌ๋ก ํํ์ด ๋ฉ๋๋ค.
2D Matrix์ ๊ฒฝ์ฐ
Cartesian matrix๋ก Translation๋ ๋ง์ , Scaling, Rotation์ ๊ณฑ์ ์ ํตํด ์ด๋ฃจ์ด์ง๊ฒ ๋๋ค.
์ด๋์ ๊ด์ ์ Object์ Position์ ํด๋นํ๋ ์ ๋ณด๋ก
์ฌ๋ฌ ์ข ๋ฅ์ Translation์ด ์ด๋ฃจ์ด์ง ๋ ์๋์ ๊ทธ๋ฆผ์ฒ๋ผ ํํํ ์ ์์ ๊ฒ์ด๋ค.
ํ์ง๋ง ํฐ ๋จ์ ์ด ์กด์ฌํ๋ค.
Transformation(๋ง์ ) ๊ณผ rotation(๊ณฑ์ )์ด ๋์์ ์ด๋ฃจ์ด์ ธ์ผ ํ๋ ๊ฒฝ์ฐ
Matrix Multiplication์ ํจ๊ณผ๋ฅผ ๋ณด์ง ๋ชปํ๊ณ ์ฌ์ ํ ๋ง์ ์ผ๋ก ์ฒ๋ฆฌํด์ผ ํ๋ ์์ญ์ด ์๊ฒจ์
์ฐ์ฐ๋ ๊ฐ์ ์ด ์ด๋ฃจ์ด์ง์ง ์๋๋ค๋ ๊ฒ์ ๋๋ค.
๊ทธ๋ ๋ค๋ฉด ์ด๋ป๊ฒ ํด์ผ ์ฐ์ฐ๋์ ์ค์ผ ์ ์์๊น์?
ํด๋ต์ Homogeneous Coordinate์ผ๋ก ๋ณ๊ฒฝํ๋ ๊ฒ์ ๋๋ค.
์ด๋ Dimension Expansion์ผ๋ก ์ฐจ์์ ์์ญ์ ๋ํ์ Catesian์ผ๋ก ํ์ํ์ ๋๋
Object๋ฅผ Position์ ๊ด์ ์ ๋ณด์์ง๋ง Homogeneous์ ๊ฒฝ์ฐ Direction ๊ด์ ์ผ๋ก ํด์๋ ์ ์์ต๋๋ค.
์ด๋ ๊ฒ ํ๋ฉด ๋ง์ ์ฐ์ฐ์ ์ํํ๋ Translation์ ๊ฒฝ์ฐ Matrix Multiplication์ผ๋ก ํํ๋ ์ ์์ต๋๋ค.
W = 0์ธ ๊ฒฝ์ฐ ์ขํ๊ณ๊ฐ ๋ฌดํ๋๋ก ๋ฐ์ฐํ๋ ๊ฒ์ ํ์ธํ ์ ์์ต๋๋ค.
์ด ๊ฒฝ์ฐ Translation์ด ์ ์ฉ๋์ง ์๋๋ค. ์๋์ ๊ทธ๋ฆผ์์๋ ๊ธฐ์กด ์ขํ Vector๊ฐ (x,y,1)๋ก ๋์ด์๋๋ฐ
(x,y,0)์ผ๋ก ์ค์ ํ๊ฒ ๋๋ ๊ฒฝ์ฐ dx์ dy์ ํด๋นํ๋ Transformation Scale์ด 0์ผ๋ก ๊ณฑํด์ ธ์
์๋ฌด ๋ณํ๊ฐ ์ผ์ด๋์ง ์๊ฒ ๋ฉ๋๋ค.
์ฆ, Homogeneous Coordinate๋ฅผ ์ฌ์ฉํ๊ฒ ๋ ๊ฒฝ์ฐ ๋ชจ๋ Transformation์
ํ๋์ Matirx Multiplication์ผ๋ก ํํํ ์ ์๊ฒ ๋๋ค๋ ์ด๋ก ์ ์ดํดํ ์ ์์ ๊ฒ์ ๋๋ค.
Scaling ๊ณผ Rotation์ ๊ฒฝ์ฐ Transformation Matrix ๋ง์ง๋ง์ (0,0,1)์ด ๋ค์ด๊ฐ ๊ฒ์ ํ์ธํ ์ ์์ต๋๋ค.
๋ชจ๋ ์์ด์ ์ธ Transformation์ด 3x3 ํ๋ ฌ๋ก ํํ๋ ์ ์์์ ์ ์ ์์ต๋๋ค.
'๐ด Course Review (Master) > ๐ ์ปดํจํฐ ๊ทธ๋ํฝ์ค' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Primitive Transformation ์ฑ์ง ๋ถ์ํ๊ธฐ (0) | 2024.03.04 |
---|