Khoảng cách giữa hai đường thẳng song song

Một phần của tài liệu Phương pháp nhận dạng khuôn mặt trong điều kiện đơn mẫu dựa trên độ đo lt mhd (Trang 76)

5 KẾT QUẢ MÔ PHỎNG

4.1Khoảng cách giữa hai đường thẳng song song

trong đódθ ml, tl,dk ml, tlvàd⊥ ml, tllần lượt tương ứng là khoảng cách góc, khoảng cách song song và khoảng cách vuông góc giữa hai đường cạnhml vàtl. Khoảng cách góc giữa hai đường cạnh được định nghĩa như sau:

dθ ml, tl

=f θ ml, tl (4.2)

với θ ml, tl là góc giao nhau nhỏ nhất giữa hai đường cạnh. f() là một hàm phi tuyến để biến một góc trở thành một số vô hướng. Phương pháp LHD sử dụng hàm phi tuyến là hàm bậc 2 như sau: f(x) = x2

W với W là một hệ số có được từ quá trình huấn luyện. Lý do sử dụng hàm bậc 2 cho khoảng cách góc là để khoảng cách giữa hai đường cạnh ít bị ảnh hưởng bởi khoảng cách góc nếu hai đường cạnh có góc lệch nhau nhỏ và sẽ bị ảnh hưởng rất lớn nếu hai đường cạnh có góc lệch nhau lớn.

Khoảng cách song song dk ml, tl và khoảng cách vuông góc d⊥ ml, tl được định nghĩa dành cho hai đường thẳng song song nhau. Khoảng cách vuông gócd⊥ ml, tlđược dùng để đo sự cách xa nhau giữa hai đường thẳng theo hướng vuông góc với hai đường, trong khi khoảng cách song song dk ml, tl được dùng để đo sự lệch nhau giữa hai điểm đầu cuối của hai đường song song. Xét hai đường cạnh song song như hình 4.1.

Khoảng cách vuông gócd⊥ ml, tlvà khoảng cách song songdk ml, tlgiữa hai đường cạnh được định nghĩa như sau:

d⊥ ml, tl =l⊥ (4.3) và dk ml, tl = min lk1, lk2 (4.4)

trong đó các giá trịl⊥,lk1 vàlk2 được định nghĩa như trong hình 4.1. Một cách tổng quát, hai đường cạnh sẽ không song song nhau. Vậy để tính khoảng cách song song và khoảng cách vuông góc giữa hai đường, trước tiên ta sẽ phải xoay hai đường thẳng để chúng song song với nhau. Chúng ta có thể xoay cả hai đường hoặc một trong hai đường quay trung điểm để chúng trở thành song song với nhau như hình 4.2. Tuy nhiên để hạn chế nhất sự thay đổi của các đường, phương pháp LHD đề xuất chọn xoay đường có độ dài ngắn hơn quanh trung điểm của nó.

Hình 4.2: Cách xoay hai đường thẳng thành song song với nhau.

(a): Hai đường thẳng cần tính khoảng cách; (b): Xoay đường thẳng ngắn hơn; (c): Xoay đường thẳng dài hơn; (d) Xoay cả hai đường thẳng một nửa góc giao nhau. Đường nét liền thể hiện vị trí sau khi xoay; đường nét đứt thể hiện vị trí ban đầu.

Hình 4.3: Các trường hợp khoảng cách song song dk = 0

thẳng, sự thêm vào hay mất đi hoặc dịch chuyển của các điểm đặc trưng, khoảng cách song song sẽ được cho bằng không dk = 0 nếu một trong hai đường thẳng nằm trong đường thẳng kia như hình 4.3.

Ở định nghĩa (4.4), khoảng cách song song của hai đường phụ thuộc vào sự lệch nhau nhỏ hơn giữa hai điểm cuối cùng bên trái hoặc phải của hai đường. Điều này nghĩa là phương pháp này chỉ quan tâm đến sự dịch chuyển nhỏ nhất giữa hai điểm biên của hai đường. Như vậy chỉ cần một trong hai điểm biên của đường được xác định đúng trong khi điểm còn lại có thể bị dịch chuyển thì khoảng cáchdk sẽ gần như không thay đổi hoặc thay đổi rất ít. Chính điều này giúp phương pháp LHD ổn định hơn với vấn đề các điểm trội bị dịch đi trong quá trình phân đoạn ảnh.

Cuối cùng, khoảng cách giữa hai đường cạnh bất kỳ ml và tl sẽ được định nghĩa là: d ml, tl

=qd2

θ(ml, tl) +d2

k(ml, tl) +d2

⊥(ml, tl) (4.5) Một định nghĩa sơ cấp cho khoảng cách Hausdorff, primary Line Hausdorff Distance

(pLHD), giữa hai bản đồ cạnh sẽ là: HpLHD Ml, Tl

=max hLHD Ml, Tl

, hLHD Ml, Tl (4.6) trong đó hLHD Ml, Tl là khoảng cách Hausdorff trực tiếp của LHD từ LEM Ml đến LEM Tl và hLHD Tl, Ml là khoảng cách Hausdorff trực tiếp của LHD từ LEM Tl đến LEMMl. Khoảng cách Hausdorff trực tiếp LHD được định nghĩa như sau:

hLHD Ml, Tl = P1 ml i∈Ml lml i X ml i∈Ml lml i . mindist mli, Tl (4.7) vớilml

i là chiều dài của đường thẳngml

i, ký hiệumindist ml

i, Tlđược dùng để chỉ khoảng cách từ đườngml

i đến đường gần nhất tương ứng của nó trong Tlvà được định nghĩa như sau:

mindist mli, Tl

= min

tl

j∈Tld mli, tlj (4.8) Tuy nhiên khoảng cách pLHD được tính như phương trình (4.7) có một điểm yếu. Giả sử chúng ta có Tl là LEM của ảnh khuôn mặt cần nhận dạng, tl là một đường trong đó; Ml (adsbygoogle = window.adsbygoogle || []).push({});

c vàMl

n lần lượt tương ứng là LEM của ảnh mẫu tương ứng với ảnh cần nhận dạng và LEM của ảnh mẫu không tương ứng với ảnh cần nhận dạng trong cơ sở dữ liệu. Trong quá trình thu nhận ảnh, trích xuất đặc trưng ... sẽ có rất nhiều khả năng lỗi xảy ra. Nếu vì một lý do nào đó mà đường tương ứng vớitl trongMl

c làml

cc bị mất đi, khi đó đườngtl trong Tl sẽ nhận một đường cạnh khác trong LEMMl

c làml

cn như đường cạnh gần nhất tương ứng của nó. Khoảng cáchd ml

cn, tlsẽ được dùng để tính khoảng cách Hausdorff trực tiếp hLHD Tl, Mn

c

. Tương tự như vậy, đường cạnh tl sẽ nhận đường cạnh ml

n của LEMMl n

như đường cạnh gần nhất tương ứng của nó trong LEMMl

n. Khi đó khoảng cáchd ml n, tl sẽ được dùng để tính khoảng cách Hausdorff trực tiếphLHD Tl, Mn

n . Rất có thể xảy ra làd ml cn, tl ≫d ml n, tlvà như vậy sẽ có thể dẫn đếnhLHD Tl, Mn c > hLHD Tl, Mn n . Khi đó ảnh Tl sẽ được nhận dạng là Ml n trong khi thực tế Ml c mới chính là ảnh tương ứng của Tl trong cơ sở dữ liệu. Đây là một trường hợp nhận dạng lầm.

Để khắc phục nhược điểm này, phương pháp LHD đã đưa thêm một chỉ số tin cậy vào để đo sự giống nhau giữa hai bản đồ cạnh.Ml

c vàMl

n là lần lượt hai bản đồ cạnh trong cơ sở dữ liệu tương ứng và không tương ứng với một bản đồ cạnh cần nhận dạngTl. Sẽ có khả năng xảy ra khoảng cách Hausdorff tính theo công thức (4.7): h Ml

c, Tl

> h Ml n, Tl, tuy nhiên có một điều chắc chắn rằng số cặp đường tương ứng của Tl và Ml

c sẽ cao hơn nhiều so số cặp đường tương ứng củaTl vớiMl

n. Như vậy việc nhận dạng lầm như đề cập ở trên sẽ được giảm bớt đi nếu như có thêm thông tin về số cặp đường tương ứng giữa hai bản đồ cạnh.

ứng của nó trong cơ sở dữ liệu. Vì các ảnh đã được tiền xử lý để đưa về kích thước như nhau nên các đường cạnh tương ứng trong hai LEM tương ứng sẽ nằm gần nhau. Vì vậy, nếu một đường cạnhml ∈Ml tìm thấy được đường tl ∈Tl là đường cạnh gần nhất tương ứng của nó, và đườngtl nằm trong vùng lân cậnNs của ml thì đườngml được gọi là một đường có độ tin cậy cao vì nó đã tìm thấy được đường tương ứng của nó trong Tl. Vùng lân cận Ns được định nghĩa là Ns = Na∩Np, trong đó Na được dùng để chỉ sự lân cận về góc vàNp đươc dùng để chỉ sự lân cận về vị trí. Một đườngtl nằm trong vùng lân cận của ml khi góc của chúng lệch nhau rong một khoảng Na và vị trí của chúng cách nhau một khoảngNp. Như vậy tỷ số tin cậy của một LEM là tỷ số của tổng số đường có độ tin cậy caoDtc với tổng số đường trong bản đồ cạnh của khuôn mặt Dtotal như sau:

R= Dtc Dtotal

(4.9) Chỉ số về sự khác nhau của hai LEM được dùng để đo tổng số đường cạnh nằm ngoài vùng tin cậy của khuôn mặt cần nhận dạng và khuôn mặt trong cơ sở dữ liệu và được định nghĩa như sau:

Dn= 1− RM +RT

2 (4.10)

Như vậy khoảng cách Hausdorff cho hai bản đồ cạnh sẽ được tính như sau: HLHD Ml, Tl

= q

H2

pLHD(Ml, Tl) + (WnDn)2 (4.11) với Wn là một trọng số cho tỷ số các đường không có độ tin cậy cao, trọng số này được xác định trong quá trình huấn luyện tập ảnh. Các trọng số của phương pháp LHD (W, Na, Np, Wn) sẽ được tính toán thông quá trình huấn luyện.

4.2 Các cải tiến cho phương pháp LHD (adsbygoogle = window.adsbygoogle || []).push({});

Khoảng cách giữa hai đường cạnh như tại phương trình (4.5) được dùng để đo sự sai lệch về hướng giữa hai đường cạnh (dθ) và đo sự sai lệch về mặt không gian giữa hai đường cạnh (dk vàd⊥). Khoảng cách trực tiếp trong phương pháp LHD sẽ phụ thuộc vào khoảng cách giữa các cặp đường cạnh tương ứng (phương trình (4.7)) và việc tìm kiếm các cặp đường cạnh tương ứng phụ thuộc vào việc tính khoảng cách giữa hai đường cạnh (phương trình (4.8)). Để tăng tính chính xác trong việc tìm kiếm các cặp đường cạnh tương ứng, các thay đổi nhỏ về cách tính khoảng cách giữa các cặp đường cạnh sẽ được đề xuất và các cải tiến cho phương pháp LHD dựa trên các cách tính này cũng sẽ được đề xuất. Phương pháp MLHD tính khoảng cách giữa các cặp đường cạnh dựa vào sự tương ứng về không gian. Phương pháp RLHD tính khoảng cách giữa các cặp đường cạnh dựa vào sự tương ứng về hướng giữa các cặp đường.

4.2.1 Phương pháp đề xuất MLHD

Phương trình (4.5), phép đo khoảng cách giữa hai đường cạnh là đo sự tương tự nhau về mặt không gian (khoảng cách song songdk và khoảng cách vuông gócd⊥) và sự tương tự về mặt hướng (khoảng cách gócdθ) giữa hai đường cạnh. Như vậy, việc giới hạn sự tương tự về mặt không gian có thể làm tăng tính chính xác trong việc tìm kiếm đường cạnh tương ứng. Từ ý tưởng này, một phương pháp thay đổi của phương pháp LHD sẽ được đề xuất, phương pháp Modified Line Hausdorff distance (MLHD) cho nhận dạng khuôn mặt.

Vì tất cả các ảnh đều được đưa về cùng kích thước nên một đường cạnh ml i ∈ Ml

là đường cạnh tương ứng của đường cạnh tl

j ∈ Tl thì đường ml

i không thể nằm quá xa đường tl

j. Như vậy đường cạnh tl

j ∈ Tl thay vì tính khoảng cách đến tất cả các đường cạnh trongMl để tìm đường có khoảng cách gần nhất đến nó thì chỉ cần tìm kiếm trong những đường nằm gần nó trong bản đồ cạnhMl. Từ đây, một phép đo khoảng cách giữa hai đường cạnh mới được định nghĩa như sau:

d ml, tl =    q d2 θ(ml, tl) +d2 k(ml, tl) +d2 ⊥(ml, tl) nếu kmmp−tmpk2 ≤dclose V trường hợp khác (4.12) trong đókmmp−tmpk2 là khoảng cách giữa hai trung điểm của hai đường cạnh, dclose là một khoảng cách ngưỡng vàV là một giá trị rất lớn. Nếu một đường cạnh không thể tìm thấy đường cạnh tương ứng của nó trong một giới hạn không giandclose, khoảng cách từ đường cạnh đó tới đường gần nhất của nó sẽ được gán cho một giá trị V rất lớn. Việc tính khoảng cách giữa hai cặp bản đồ cạnh trong phương pháp MLHD cũng được thực hiện như phương pháp LHD. Khoảng cách giới hạndclose là tỷ số giữa kích thước ảnh D và hệ số Kcg. Sử dụng cơ sở dữ liệu ảnh khuôn mặt BERN để huấn luyện, chúng tôi có được sự ảnh hưởng của thông số Kcg đến thuật toán như hình 4.4.

Theo kết quả ta thấy, với Kcg = 1,2 thì phương pháp này cho tỷ lệ nhận dạng đúng lên đến 100% trong điều kiện lý tưởng với tập cơ sở dữ liệu BERN. VớiKcg= 1 thì vùng tìm kiếm sẽ là toàn bộ bức ảnh, hay nói cách khác chính là phương pháp LHD ban đầu. Vì vậy trong các mô phỏng khác, giá trịKcg = 2 sẽ được lựa chọn. Với điều này, vùng tìm kiếm chỉ là1/4của bức ảnh. Các kết quả mô phỏng cho thấy rằng phương pháp đề xuất này cho thời gian tính toán nhanh hơn phương pháp LHD nhưng lại cho kết quả nhận dạng thấp hơn phương pháp LHD trong các điều kiện khác nhau của ảnh đầu vào.

Các kết quả của phương pháp MLHD đã được trình bày tại bài báo [88]: Dang Nguyen Chau and Do Hong Tuan, "A modification of line Hausdorff distance for face recognition to reduce computational cost," Science and Technology Development Journal, vol. 20, no. K3, pp. 152-158, 2017.

Hình 4.4: Ảnh hưởng của thông số Kcg đến việc nhận dạng4.2.2 Phương pháp đề xuất RLHD 4.2.2 Phương pháp đề xuất RLHD

Thay vì dựa trên sự tương ứng về không gian để tính khoảng cách giữa hai cặp đường cạnh, phương pháp Robust Line Hausdorff distance (RLHD) dựa trên sự tương tự về hướng giữa hai cặp đường cạnh để tính khoảng cách giữa chúng. Việc tính khoảng cách dựa trên sự tương tự về hướng dựa trên nhận định sau.

Giả sử gọi Tl là bản đồ cạnh cần nhận dạng và tl là một đường cạnh trong bản đồ cạnh đó. Gọi Ml

c và Ml

n lần lượt là bản đồ cạnh dúng và không đúng của Tl trong cơ sở dữ liệu. Gọiml

c là đường cạnh tương ứng của tl trong bản đồ cạnhMl

c. Vì lý do lỗi trong quá trình phân đoạn ảnh, trích đặc trưng, đường cạnh ml

c có thể bị đứt đoạn, làm giá trị của khoảng cách song song tăng lên đáng kể và dẫn đến khoảng cách d ml

c, tl tăng lên. Khoảng cách này sẽ được dùng để tính giá trị của khoảng cách Hausdorff trực tiếp h Ml

c, Tl. Ngược lại, một đường cạnh ml

n trong bản đồ cạnh Ml

n có khoảng cách ngắn nhất đến tl, tuy không phải là đường cạnh tương ứng củatl, nghĩa là không giống với tl, nhưng lại có khoảng cách song song và vuông góc rất nhỏ với tl, dẫn đến khoảng cách d ml

n, tl là đủ nhỏ, và nhỏ hơn giá trị củad ml

c, tl. Khoảng cách này sẽ được dùng để tính giá trị của khoảng cách Hausdorff trực tiếph Ml

n, Tl. Nếu đường cạnh tl có độ dài đủ lớn thì có thể dẫn đến khoảng cách Hausdorff trực tiếp h Ml

c, Tl lớn hơn giá trị của h Ml

n, Tl. Điều này sẽ dẫn đến Tl nhận bản đồ cạnh Ml

n trong cơ sở dữ liệu là bản đồ cạnh tương ứng, thay vìMl (adsbygoogle = window.adsbygoogle || []).push({});

c. Đây là một trường hợp dẫn đến nhận dạng sai trong phương pháp LHD.

Tuy nhiên bản đồ cạnh là tập hợp của các đường cạnh, phản ánh cấu trúc của khuôn mặt. Một đường cạnh có thể bị đứt đoạn trong quá trình phân đoạn ảnh nhưng hướng của đường cạnh này vẫn không đổi vì đó là cấu trúc của khuôn mặt. Điều này có nghĩa là một đường cạnh tin cậy ml

c của đường cạnh tl trong bản đồ cạnhMl

Hình 4.5: Cấu trúc dữ liệu mới của bản đồ cạnh

với đườngtl, hay góc giao giữa 2 đường này là nhỏ. Ngược lại, một đường cạnh ml

n trong bản đồ cạnhMl

n nhiều khả năng sẽ có hướng khác xa so với đườngtl, hay góc giao nhau giữa hai đường này là lớn. Với phân tích như trên, một đường cạnhml trong bản đồ cạnh Ml khi tìm kiếm đường cạnhtl trong bản đồ cạnhTl có khoảng cách gần nhất tới nó thì chỉ cần tìm kiếm các đường cạnh có cùng hướng với đường cạnhml hoặc có góc giao nhau với đường ml là không lớn. Điều này đem đến 2 ưu điểm:

ˆ Đường cạnh ml khi tìm kiếm đường có khoảng cách gần nhất thì chỉ tìm kiếm các đường trong nhóm có cùng hướng chứ không nhất thiết phải tính khoảng cách tới toàn bộ các đường cạnh. Điều này làm giảm thời gian tính toán cho thuật toán.

ˆ Với việc tìm kiếm trong nhóm các đường cạnh cùng hướng, ảnh hưởng của nhiễu

Một phần của tài liệu Phương pháp nhận dạng khuôn mặt trong điều kiện đơn mẫu dựa trên độ đo lt mhd (Trang 76)