본 포스팅은 충남대 고영준 교수님의 강의자료를 바탕으로 작성한 글입니다.
2024.06.16 - [AI/컴퓨터비전] - image warping 이거랑 비슷
Image Stitching
1. 각 이미지의 feature point 찾기!
2. 서로 맞는 pair 찾기!
3. 그걸 이용해 이미지 붙이기!
1, 2번은 이미 다룬 내용이니까 pass하고, 이제 3번을 할 것이다.
image1에 image2를 붙이려 할 때, img1의 새로운 픽셀에서는 img2의 알맞은 위치를 찾아 그 픽셀값을 가져오면 된다.
Forward warping
1. 두 이미지간 쌍을 충분히 찾는다.
2. 변환 파라미터를 찾는다
3. 첫 이미지의 f(x, y)를 두 번째 이미지의 해당 위치로 보낸다.
근데 여기서 3번 과정에서 문제가 생긴다.
내가 픽셀을 정하고, 이걸 어디로 보낼지를 생각했는데, 만약 그 위치가 정수 좌표가 아니라면?
뭐 이웃하는 데로 보내자기엔 애매하고.. 그리고 warping을 했는데 같은 위치가 겹친다면? 뭐 평균을 내면 되긴 하겠지만..
Backward warping
위의 단점을 극복한 것이다.
이 이미지가 어느 공간으로 변환될 것인지 보고, 역으로 계산하는 것!
원랜 X' = MX인데, 이걸 역으로 X = inv(M)X'을 계산한다는 말이다.
그럼 미래 공간에 대해 지금 이미지의 어느 좌표를 가져올 수 있을지를 알아보면 될 것이다.
이미 알듯, 여기서는 X를 구했을 때 실수좌표가 나왔다고 해도 괜찮다!
interpolation을 사용해서 그 주변 값들을 이용해 픽셀값을 구할 수 있기 때문이다.
그냥 이거다. 내분점을 이용한 공식이다.
이건 NN보다 smooth하다.
그리고 저 좌표들은 이렇게 구할 수 있다.
마지막으로 이렇게 붙일 이미지를 가져왔을 때,
img1과 img2에서 겹치는 부분이 무조건 생길 것이다.
뭐 그냥 img1 거를 써도 되고.. 아님 블렌딩을 해도 된다.
여기선 블렌딩을 다루진 않을 것이다.
'AI > 컴퓨터비전' 카테고리의 다른 글
Object Detection (0) | 2024.12.16 |
---|---|
Vision Transformer (0) | 2024.12.16 |
Image Alignment (1) | 2024.12.16 |
SIFT (0) | 2024.12.16 |
Image Classification (0) | 2024.12.15 |