6. Image geomectry part 4: Homographies - Projection Matrix

Mở đầu

Sau khi tìm hiểu được SIFT algorithm, chúng ta đi sâu hơn vào mở rộng, mục tiêu tiếp theo là tiền đến pespective transform

Homography

Ta nhắc lại các Affine Transformation trong 2D Image




Vậy ta định nghĩa Homography và các tính chất:


đối với planar objects (đối tượng phẳng):
    - Thay đổi viewpoint là homography
    - Affine transformation xấp xỉ viewpoint change
Để biểu diễn pixel đích, ta có 2 loại phương pháp là Foward WarpingInverse Warping.
    - Với Forward warping, ta tính vị trí đích x' = h(x) rồi copy pixel f(x) vào g(x') 
    - Với Inverse Warping, ta tính vị trí gốc x = 
h-1(x') rồi resample f(x) tại x và copy vào g(x')
Trong đó f là form biểu diễn image 1, g là form biểu diễn image 2
1 tranform chuyển 1 projective plane (1 tứ giác) đến projective plane(tứ giác khác), là 1 homography
Từ đó 
Tổng hợp hết lại cá điểm, ta có 
Ta có 1 least square problem và nghiệm, từ đó cần ít nhất 4 points để tối ưu H

Vậy ta có thuật toán 
Camera Model
Ta nhớ lại quy tắc bàn tay phải (right handed) để vẽ các trục tọa độ X, Y, Z vuông góc nhau.Định nghĩa point P là principal point  là điểm thuộc mặp phẳng giao của optical axisinteresects image plane, Khoảng cách từ tâm camera đến principal point gọi là f (focal length)
Ta đặt axes x và y cho image plane. Bài toán là làm sao chuyển từ camera's coordinare system (3D) về image coordinate system (2D)
Lấy 1 point Q từ camera's coordinate system, vẽ 1 projection line (nối Q và camera center), giao với image plane tại q. Vậy q là điểm ta thấy tại các ảnh của ta

Ambiguity (mơ hồ): Chúng ta không biết được khoảng cách của Q với camera, vì mọi điểm trên projection line đều có hình chiếu q, vậy ta cũng không biết 3D size của vật thể trên image. Vậy ta cần 1 sự tính toán dựa trên so sánh tỉ lệ
Ta nhắc lại Projection Equations: 
Ta sử dụng Homogeneous Coordinates (đơn giản là thêm 1 vào vị tri vector để biểu diễn giá trị tọa độ của không gian có dim thấp hơn)
Do đó, nếu scaling theo vị trí cuối vector thì không có ảnh hưởng gì. Hay nói cách khác, trong Projective Gaometry, mội điểm bằng nhau bởi scaling
Còn đối với đường (line)?
Vậy ta có thể check liệu point có thuộc line bằng cách nếu dot product bằng 0 không ( bằng 0 là thuộc). Tức là homogenous vectors vuông góc với line vector I. Mà từ 2 vector có thể tìm vector vuông góc bằng cross product. Vậy để tìm đường I đi qua 2 điểm (x1, y1) và (x2, y2):
Trở lại Pespective Projection, ta có:
Vậy ta có định nghĩa camera calibration matrix hay intrinsic parameter matrix. còn K là internal camera parameters
Giờ giả sử 2 axis x, y không vuông góc mà có angle theta 
θ, ta có:
Nhưng hầu hết trường hợp ta sẽ sử dụng K ban đầu với x y vuông góc
Ta có các tính chất:
Vanishing point: các đường thẳng song song trong 3D mà cùng 3D direction, tất cả đồng quy tại 1 điểm vanishing point
Theo mặt toán học, ta có 
Cách tìm điểm này là Translate direction D đến camera center. Đường này cắt image plane tại vanishing point

ngược lại, nếu direction song song image plane thì sẽ không giao và cũng không có vanishing point (dễ dàng chứng minh)

Ngoài ra, mỗi 3D direction cùng thuộc 1 3D plane sẽ có vanishing points cùng nằm trên 1 đường thẳng song song với 3D plane được gọi là vanishing line. Vanishing line cho ground planehorizon line (chỉ đúng nếu image plane vuông góc ground plane).

Incline (độ nghiên): Vậy độ nghiên của 1 direction so với hình chiếu direction đó cũng là phụ của góc giữa ground plane và image plane 

Orthographic Projection: trường hợp đặc biệt của perspective projection khi khoảng cách giữa camera và image plane là vô tận
Khi đó:
Camera Parameter
Giả sử ta đặt camera trong thế giới thực, thì ta cần tới 2 coordinate system:
    - World coordinate system
    - Camera coordinate system

Biến đổi:
Projection Equations
Ví dụ ứng dụng:
Vẽ vào 1 đối tương 3D hay xác định 3D box qua camera
Ví dụ CAD car







Tham khảo

https://www.cs.utoronto.ca/~fidler/teaching/2021/CSC420.html

http://www.cs.toronto.edu/~fidler/slides/2021Winter/CSC420/lecture9.pdf

http://www.cs.toronto.edu/~fidler/slides/2021Winter/CSC420/lecture10.pdf



Nhận xét