Nắn chỉnh trên cơ sở phân vùng ảnh

Một phần của tài liệu NẮN CHỈNH BIẾN DẠNG HÌNH HỌC VÀ ỨNG DỤNG (Trang 29 - 33)

Trong trường hợp các điểm đặc trưng được sắp xếp để tạo thành một lưới bao phủ lên bề mặt ảnh, khi đó ảnh gồm nhiều phần ghép lại với nhau. Để nắn chỉnh ảnh, chỉ cần nội suy các phần tương ứng của lưới. Tùy thuộc vào lưới được tạo thành là lưới gì sẽ có kỹ thuật nắn chỉnh tương ứng. Nếu là lưới tam giác ta có thuật toán biến đổi trên cơ sở phân hình tam giác, nếu là lưới tứ giác ta có thuật toán biến đổi trên cơ sở phân hình tứ giác v.v..

Khi phân tích ảnh người ta dùng phương pháp phân vùng tam giác và phân vùng tứ giác. Trong đó kỹ thuật nội suy thường sử dụng là nội suy tam giác (Affine Interpolation) và nội suy tứ giác (Trilinear Interpolation và Bilinear).

a. Nội suy tam giác

Để biến đổi lưới tam giác này thành lưới tam giác kia ta thực hiện nội suy từng tam giác tương ứng cho nhau. Cách đơn giản nhất là sử dụng kỹ thuật ánh xạ dựa trên hệ toạ độ Barycentric.

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

Ở giai đoạn xác định các điểm đặc trưng (phần sau) chúng ta tạo ra xây dựng một lưới các tam giác cho ảnh gốc và ảnh đích thoả mãn điều kiện:

Trong đó:

Ti là diện tích của tam giác thứ i S là diện tích của ảnh.

Đồng thời 3 đỉnh của tam giác là 3 điểm đặc trưng được xác định trên đối tượng ảnh và có sự tham chiếu một - một giữa các điểm này.

Dựa trên lưới các đặc trưng vừa xây dựng được, ứng với mỗi điểm ảnh cần nội suy, hàm biến đổi sẽ xác định toạ độ của nó rồi xác định hai điểm có cùng toạ độ trên ảnh đích và ảnh gốc. Sau đó gán giá trị màu của điểm ảnh đích bằng giá trị màu của điểm gốc tương ứng.

* Cơ sở lý thuyết

+ Khái niệm về toạ độ Barycentric

Với mỗi điểm M(xm,ym) nằm trong tam giác ABC thì chúng ta đều có thể biểu diễn toạ độ của nó theo toạ độ các đỉnh của tam giác như sau:

Giải hệ phương trình này ta được một nghiệm duy nhất:

( - ) ( - ) - ( - ) ( - ) ( - ) ( - ) - ( - ) ( - ) ya yc xa xm xa xc ya ym v ya yc xa xb xa xc ya yb  ( - ) ( - ) - ( - ) ( - ) ( - ) ( - ) - ( - ) ( - ) ya ym xa xb xa xm ya yb w ya yc xa xb xa xc ya yb  u = 1-v-w Ti = S i Ti  Tj =  xm = u xa + v xb + w  xc ym = u ya + v yb + w  yc u+v+ w = 1 u,v, w  0

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

Chúng ta nói rằng điểm M có toạ độ là (u, v, w) đối với tam giác ABC. + Một số đặc điểm cần chú ý của toạ độ Barycentric

Đối với mỗi điểm toạ độ của nó là duy nhất.

Toạ độ của một điểm phụ thuộc vào tỉ lệ các khoảng cách từ nó đến các đỉnh của tam giác chứ không phải là khoảng cách tuyệt đối giữa chúng.

Nếu khoảng cách tương đối của điểm cần biểu diễn đến điểm cơ sở nhỏ thì hệ số tương ứng với nó sẽ lớn. Hình 2.1 sẽ minh hoạ cho khái niệm hệ toạ độ Barycentric.

Đến đây thuật toán đã hoàn toàn rõ ràng. Vậy các bước phải thực hiện đối với thuật toán này là:

Xây dựng lưới tam giác cho ảnh gốc và ảnh đích

Đối với mỗi cặp tam giác tương ứng với ảnh gốc và ảnh đích ta nội suy tam giác ở ảnh gốc thành tam giác ở ảnh đích.

Một vấn đề nảy sinh là làm sao có thể tìm được tất cả các điểm thuộc tam giác ABC một cách hiệu quả?

Có nhiều phương án để giải quyết vấn đề này, phần sau đây sẽ giới thiệu một phương pháp khá hiệu quả.

* Phương pháp xác định tất cả các điểm thuộc một tam giác

Phương pháp này gồm có các bước như sau:

Tìm các giá trị xmax, xmin, ymax, ymin đối với các đỉnh của tam giác.

(0,1,0)

(1,0,0) (0,0,1)

Hình 2.1 Hệ toạ độ Barycentric (adsbygoogle = window.adsbygoogle || []).push({});

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

For a = ymin to ymax do

- Tìm giao điểm của đường thẳng y=a với 3 cạnh của tam giác.

- Chỉ xét các giao điểm có hoành độ thuộc [xmin,xmax] và sắp xếp các giao điểm theo chiều tăng dần của hoành độ.

- Các điểm nằm trên đường thẳng y=a và có hoành độ thuộc đoạn [x_min,x_max] là thuộc tam giác (với x_ thể hiện hoành độ giao điểm).

Sử dụng thuật toán tam giác người ta có thể xác định được tọa độ các điểm bị bóp méo dựa vào cặp điểm đặc trưng. Các điểm này được xác định dựa vào việc xác định tam giác nào là cơ sở, cặp điểm nào là cơ sở. Việc xác định cặp điểm đặc trưng có thể dựa vào thuật toán sau

Trước tiên định nghĩa một ánh xạ T cho các đỉnh của tam giác: M(A)=A', M(B)=B', M(C)=C'. Các điểm còn lại sẽ được ánh xạ theo toạ độ Barycentric

(1, 2, 3) nghĩa là:

X= 1*A+2*B+3*C

Trong đó: i  0 và 1+ 2+ 3 =1

Khi đó điểm Y là ánh xạ của X qua M được tính toán như sau:

Y = M(X) = M(1*A+2*B+3*C) = 1* M (A) +2*M(B) +3*M(C) = 1*A'+2*B'+3*C' y = ymin y = ymax x = x max x = x mi n

Số hóa bởi Trung tâm Học liệu – Đại học Thái Nguyên http://www.lrc-tnu.edu.vn

b. Phân vùng tứ giác

Nếu lưới xây dựng trên ảnh nguồn và đích tương ứng là lưới tứ giác, ta cần nội suy các tứ giác cho nhau. Để thực hiện điều này ta dùng phép nội suy Bilinear. Phép nội suy Bilinear xác định một hàm biến đổi từ một hình vuông kích thước 0,1x0,1 tới một tứ giác trong không gian (tứ giác này không nhất thiết phải đồng phẳng). Phép biến đổi được thực hiện tương đương với hai việc: Thứ nhất là nội suy trên các cạnh AD và BC thu được điểm P và Q.

P = (1-v)A +vD Q = (1-v)B +vC

Việc tiếp theo là nội suy trên đoạn PQ sử dụng thông số u: B(u,v)=(1-u)P +uQ

Một phần của tài liệu NẮN CHỈNH BIẾN DẠNG HÌNH HỌC VÀ ỨNG DỤNG (Trang 29 - 33)