파노라마 사진 만들기
1. feature
1) 특징 찾기 - local feature : corner
2) 특징 묘사 - vector로 표시
3) 특징끼리 연결 (match)
2. alignment
1) transform & warping
2) alignment
이전 포스팅에서는 feature를 묘사할 descriptor를 찾는 방법에 대해 알아보았다.
이번에는 matching된 feature를 연결할 warping을 위한 transformation matrix에 대해 알아보고자 한다.
Transformations and warping
Image alignment

같은 장소에서 서로 다른 각도로 찍은 두 이미지를 이어 붙이려고 할 때 사진을 그냥 붙이면 잘 안 붙여질 것이다.
두 이미지의 겹치는 부분에 대한 기하학적 특징에 대해 알고, 각 특징을 매칭 시킴으로써 이미지를 붙여보고자 한다.
Image Warping
warping : 휘어지게 하다, 왜곡하다
영상 시스템에서 Warping
영상을 x축, y축,회전,scale등을 이용하여, 보정이나 찌그러진 이미지를 정규화하기 위한 처리방법 또는 기법
Image Filtering vs Image Warping


- Image Filtering : image의 범위를 바꾸는 것 (색, intensity 등)
- Image Warping : image의 domain을 바꾸는 것 (위치 등)
Parametric (global) warping
파라미터로 표현하면서 이미지 전체를 변화하는 warping

warping을 위한 matrix
Transformation (2x2 matrix)
scale, rotation, shear, mirror 가능
특징
- 원점, 선, 평행, 비율 유지
- closed under composition (닫혀 있어서 연속 연산 가능)
예시
- Scaling

- Rotation

- 2D mirror about Y axis (Y축 대칭)

- 2D mirror acroos line y = x ( y = x 대칭)

Translation (Homogeneous coordinates)
translation은 2x2 matrix로 표현 불가능
>> Homogeneous coordinate 도입
Homogeneous coordinate
포인트의 transformation과 벡터의 trainsformation을 한번에 표현하는 transforamtion matirx를 구할 수 있는 방식

- vector는 마지막 차원이 0 / point는 마지막 차원이 1
>> 이를 통해 2차원 공간 내에서 transformation을 하나의 matrix로 표현
Homogeneous coordinate을 이용한 Translation matrix

참고자료
https://gaussian37.github.io/vision-concept-homogeneous_coordinate/
Affine transformation
결과가 평행사변형의 형태로 나타나는 transformation (선형 변환 + 이동으로 정의 가능)
위의 scale, rotation, translate, shearing 등을 affine transforamtion으로 표현할 수 있다.


마지막 행이 [ 0 0 1 ]로 나타나는 것이 특징
참고자료
https://gaussian37.github.io/vision-concept-image_transformation/
Projective Transformation (Homographies)
affine transformation과 다르게 0, 0, 1이 아님


Affine과 Homography 비교
transformation | 원점 | 라인 | 평행 | 비율 | 연산 | |
Affine | Linear, Translation | 유지 안됨 | 유지 | 유지 됨 | 유지 됨 | Closed |
Projective | Affine, Projective warp | 유지 안됨 | 유지 | 유지 안됨 | 유지 안됨 | Closed |
2D image transformations

Forward warping vs Inverse warping
Forward Warping


원본이미지에서 translation을 통해 이미지를 변환하는 것
문제
변형된 이미지가 pixel의 격자에 위치하면 어떻게 해야하는가?
>> 몇 개의 픽셀을 추가하거나 추후 normalize 진행
Inverse Warping


변환된 이미지 pixel을 원본 이미지에 mapping하는 것
Forward Warping과의 차이
원본 이미지를 알고 있으므로 주변값을 이용하여 interpolation 가능
'Computer Science > 컴퓨터비전' 카테고리의 다른 글
컴퓨터비전:: RANSAC (0) | 2023.04.13 |
---|---|
컴퓨터비전:: Image alignment (0) | 2023.04.13 |
컴퓨터비전:: Image Descriptors & Match (0) | 2023.04.12 |
컴퓨터비전:: Harris corner detection (0) | 2023.04.12 |
컴퓨터비전:: Resample (0) | 2023.04.11 |