Bằng việc gán một hướng cho mỗi điểm đặc trưng keypoint dựa vào các thuộc tính ảnh cục bộ, bộ mô tả keypoint có thể được biễu diễn tương đối so với hướng này và do đó đặt được tính bất biến đối với các hiện tượng quay ảnh. Cách tiếp cận này ngược lại với các bộ mô tả bất biến hướng của Schmid (1997)
ở chỗ mỗi thuộc tính ảnh sẽ dựa vào một độ đo bất biến về hướng. Nhược điểm của cách tiếp cận này đó là nó giới hạn số lượng các bộ mô tả được sử dụng và bỏ qua các thông tin về ảnh bởi vì nó không yêu cầu mọi độ đo đều phải dựa trên một hướng nhất quán.
Sau đây là kỹ thuật gán hướng cục bộ cho các điểm đặc trưng. Độ đo của các điểm đặc trưng được sử dụng để tìm ra một ảnh đã lọc Gaussian L với kích thước gần nhất sao cho mọi tính toán sẽ được thực hiện trong cùng một cách bất biến về độ đo. Với mỗi mẫu ảnh L x y( , )này, gọi m x y( , )là biên độ gradient,
( , )x y
là hướng. Hai giá trị cuối được tính toán như sau:
2 2 ( , ) ( ( 1, ) ( 1, )) ( ( , 1) ( , 1)) m x y L x y L x y L x y L x y (2.10) 1 ( , )x y tan (( ( ,L x y 1) L x y( , 1)) / ( (L x 1, )y L x( 1, )))y (2.11) 2.1.2.4. Tạo bộ mô tả cục bộ
Các phép xử lý trên đây đã thực hiện dò tìm và gán tọa độ, kích thước, và hướng cho mỗi điểm đặc trưng keypoint. Các tham số đó yêu cầu một hệ thống tọa độ địa phương 2D có thể lặp lại được để mô tả vùng ảnh địa phương và nhờ vậy tạo ra sự bất biến đối với các tham số đó. Bước tiếp theo đây sẽ tính toán một bộ mô tả cho môt vùng ảnh địa phương mà có tính đặc trưng cao (bất biến với các thay đổi khác nhau về độ sáng, thu – phóng ảnh, xoay).
Một cách tiếp cận đơn giản đó là lấy mẫu mật độ ảnh cục bộ lân cận điểm đặc trưng ở một độ đo thích hợp, và đối sánh các mật độ này sử dụng độ đo tương quan chuẩn. Tuy nhiên, hê số tương quan đơn giản thì lại rất nhạy cảm với sự thay đổi mà gây ra sự đăng ký nhầm các mẫu, chẳng hạn như các biến đổi Affine, phối cảnh 3D, hoặc bóp méo mềm. Cách tiếp cận tốt hơn nhiều được đưa ra bởi Edelman, Intrator và Poggio (1997). Cách tiếp cận này dựa trên một mô hình thị giác sinh học, cụ thể là mô hình noron phức tạp trong hệ thống não
bộ. Các noron sẽ tương ứng với một gradient tại một hướng và tần số không gian cụ thể, nhưng vị trí của gradient trên võng mạc được phép trượt trên một phạm vi nhỏ của khung nhìn. Dựa trên cách tiếp cận này, tác giả đã cài đặt bộ mô tả mới trong đó cho phép việc trượt vị trí sử dụng một cách tính toán khác. Hình sau mô phỏng quá trình tính toán các bộ mô tả theo cách tiếp cận mới.
Hình 2.6. Mô tả tạo bộ mô tả cục bộ
Ảnh trái là mô phỏng biên độ gradient và hướng tại mỗi mẫu ảnh trong một vùng lân cận với điểm keypoint. Các giá trị đó tập trung trong một cửa sổ gaussian (nằm bên trong vòng tròn). Các mẫu này sau đó được gom lại thành một lược đồ hướng mô tả vắn tắt nội dung trong 4x4 vùng con như được mô tả ở bên phải với độ dài của mỗi hàng tương ứng với tổng biên độ gradient gần hướng đó bên trong một vùng.
2.1.3. Kỹ thuật đối sánh
Trước hết để đối sánh các ảnh với nhau thì cần trích xuất tập keypoint tương ứng từ mỗi ảnh bằng các bước đã chỉ ra ở trên. Sau đó việc đối sánh sẽ thực hiện trên các tập keypoint này. Bước chính trong kĩ thuật đối sánh sẽ thực hiện tìm tập con keypoint so khớp nhau ở hai ảnh, để thực hiện việc này sẽ tìm
các cặp keypoint trùng nhau lần lượt ở hai ảnh. Tập con các keypoint so khớp chính là vùng ảnh tương đồng.
Các bước đối sánh trên là gần giống vét cạn, đối với việc đối sánh trong CSDL lớn các ảnh sẽ gặp rất nhiều khó khăn do chi phí thực hiện đối sánh là rất lớn. Giải pháp cho vấn đề này là tạo chỉ mục (index) cho các tập keypoint, cụ thể là các keypoint được sắp xếp sẵn theo một tiêu chí dựa trên các giá trị của bộ mô tả và hướng của nó. Để thêm một tập keypoint mới sẽ tự động sắp xếp và tạo chỉ mục cho nó. Việc thực hiện tìm kiếm một keypoint so khớp trên CSDL sẽ áp dụng tìm kiếm nhị phân trên các tập keypoint đã được sắp xếp và đánh chỉ mục. Việc tìm kiếm tập keypoint so khớp sẽ trở nên đơn giản hơn với chi phí tính toán thấp hơn nhiều.
Toàn bộ các bước trên bao gồm 13 thuật toán con [15] nhưng trong khuôn khổ luận văn nhóm nghiên cứu không trình bày ở đây.
2.1.4. Một số hướng cải tiến, phát triển thuật toán SIFT
2.1.4.1. Giảm số lượng keypoint trích xuất ở mỗi ảnh
Một trong những hạn chế lớn của SIFT là chi phí đối sánh tập keypoint khá lớn do số lượng keypoint trích xuất được khá lớn. Để khắc phục nhược điểm này ngoài cải thiến thuật toán đối sánh thì nên giảm số lượng các điểm keypoint trích xuất được.
Cụ thể sẽ tối giản tập keypoint theo các bước:
Hạn chế các điểm keypoint mà tại đó biên độ Gradient biến đổi không rõ rệt, tức là tại đó độ biến thiên màu sắc là nhỏ, các điểm lân cận có mức xám gần tương tự nhau. Hạn chế những điểm này không làm giảm tính đặc trưng của tập keypoint do một trong số các điểm lân cận của nó có biên độ Gradient biến đổi rõ rệt hơn và được chọn làm keypoint sẽ đại diện tính đặc trưng cục bộ cho điểm bị loại bỏ và điểm được chọn sẽ đồng thời tăng tính đặc trưng cục bộ.
Kết hợp với việc dò biên ảnh để hạn chế các điểm keypoint nằm gần biên do càng gần biên sẽ càng dễ bị ảnh hưởng bởi nhiễu và các phép biến đổi thông thường. Việc dò biên sẽ áp dụng kỹ thuật dò biên Candy cho đường biên mảnh và hiệu quả.
2.1.4.2. Dùng lược đồ màu loại trừ trước các ảnh ít khả năng tương đồng
Trước khi thực hiện tìm kiếm trong cơ sở dữ liệu ảnh ta sẽ dùng lược đồ màu để loại các ảnh có màu sắc quá khác nhau, tức là tính tương tự nhau là rất ít. Các ảnh này sẽ bị bỏ qua trong quá trình tìm kiếm để giảm chi phí đối sánh, tìm kiếm ảnh tương đồng.
2.1.4.3. Trích xuất đối tượng ra khỏi ảnh theo đối tượng mẫu
Sau khi nhận dạng đối tượng trong ảnh theo một đối tượng mẫu ta có thể trích xuất đối tượng đó ra khỏi ảnh nhờ việc điều chỉnh hướng cho từng cặp keypoint so khớp cho chúng đồng bộ nhau và thực hiện dò vết theo các chốt là các keypoint so khớp để lần theo biên đối tượng và thực hiện trích xuất được đối tượng ra khỏi ảnh.
2.2. Kỹ thuật AAM
2.2.1. Giới thiệu về mô hình biểu diễn động
Một trong những thách thức khó khăn của thị giác máy tính (computer vision) là cần phải xây dựng những hệ thống tự động, có khả năng “hiểu” được ảnh – bao gồm việc tái cấu trúc ảnh và nêu lên ý nghĩa của nó. Hiện nay, có rất nhiều ứng dụng thực tế cần tới lĩnh vực này. Bởi với những ứng dụng có độ khó cao đòi hỏi hệ thống phải thao tác liên quan đến những đối tượng có cấu trúc phức tạp và biến đổi liên tục. Ví dụ như nhận dạng khuôn mặt hay ảnh y khoa, đây thường là những loại ảnh có khả năng chứa nhiễu cao và không có đầy đủ luận cứ để có thể nhận dạng chính xác đối tượng nếu không có một tri thức cho trước.
Phương pháp dựa vào mô hình (Model - based) được xem như là một giải pháp tốt giải quyết các khó khăn nêu trên. Phương pháp này xây dựng những mô hình mô phỏng hình dáng thật của các cấu trúc phức tạp mà hệ thống sẽ thao tác. Những mô hình được xem là những cơ sở tri thức cho trước giải quyết sự nhầm lẫn có thể xảy ra trong quá trình nhận dạng được gây nên bởi sự phức tạp của cấu trúc, nhiễu hay thiếu xót dữ liệu. Sự giải thích ảnh trong phương pháp này được quy về quá trình so khớp dữ liệu. Đầu tiên ta sẽ chọn ra những mẫu dữ liệu huấn luyện và tham số hóa nó. Sau đó, với một dữ liệu ảnh
bất kỳ, ta định vị và đánh dấu cấu trúc cần tìm trên dữ liệu ảnh bằng việc hiệu chỉnh những tham số dùng để định nghĩa mẫu dữ liệu huấn luyện.
Lợi thế của phương pháp này là:
Phương pháp này được ứng dụng rộng rãi. Cùng một thuật toán có thể được áp dụng với những vấn đề khác nhau bằng việc chuẩn bị những tập dữ liệu huấn luyện khác nhau.
Thông qua việc huấn luyện dữ liệu, chúng ta thu được một hệ tri thức chuẩn và chuyên biệt, đáng tin cậy, tăng tính nhanh và chính xác của thuật toán.
Phương pháp cho kết quả đầu ra là một đối tượng có biểu diễn đóng (compact representation) trong một mức độ biến đổi cho phép. Sự biến đổi và biến dạng của đối tượng phải đối chiếu theo dữ liệu huấn luyện và không vượt ngưỡng cho phép. Chính điều này mang lại cho đối tượng đầu ra một hình dáng và cấu tạo gần giống với dữ liệu huấn luyện.
Phương pháp mô hình biễu diễn động – AAM [6], [7], [8], [9] cũng là một trong những phương pháp theo hướng tiếp cận dựa vào mô hình. Phương pháp này được phát triển trước tiên bởi nhóm nghiên cứu tại khoa Khoa học ảnh và Sinh Y học đại học Manchester. Phương pháp tìm ra những mô hình tham số sinh ra những mô hình tổng hợp (synthetic model) trong dữ liệu ảnh khớp tới mức có thể với mô hình mụch tiêu (target model). Cụ thể là phương pháp này tận dụng các ràng buộc về hình dáng và cả những thông tin kết cấu của đối tượng và tham số hóa chúng thành những biểu diễn đặc trưng của cấu trúc cần xét sau đó tiến hành so khớp những đặc trưng này với dữ liệu ảnh và tìm ra kết quả.Trong một số trường hợp tham số sau khi so khớp còn có thể dùng cho những xử lý khác như xác định độ đo hay phân loại mô hình. AAM cho thấy tính hiệu quả là linh động và tối ưu của nó so với những phương pháp cùng hướng tiếp cận được xem là phương pháp cải tiến cả về tốc độ và độ chính
xác của phương pháp mô hình hình dạng động (Active Shape Model - ASM). Hiện có rất nhiều nghiên cứu ứng dụng từ AAM hoặc tối ưu AAM đang được tiến hành.
2.2.2. Mô hình thống kê của sự biểu diễn đối tượng
Để tổng hợp một bức ảnh hoàn chỉnh của đối tượng ta phải mô hình cả hình dáng(tập điểm đánh dấu) và kết cấu(cường độ của màu sắc đặc trưng của mô hình) của nó. Phương pháp AAM chọn cách mô hình 2 đặc trưng trên bằng mô hình thống kê bởi vì mô hình thống kê là cách mô hình đơn giản và cũng nói lên sự biến thiên của chúng trong các trường hợp khác nhau.
Từ đây, mô hình thống kê của sự biểu diễn đối tượng được sinh ra bằng việc kết hợp hai mô hình thống kê nêu trên và chuẩn hóa chúng theo một quy luật nhất định. Phương pháp phân tích đặc trưng cũng được áp dụng trong quá trình mô hình hóa để giảm thiểu số tham số và độ phức tạp tính toán.
Trong tập dữ liệu huấn luyện, khi chúng ta tiến hành mô hình hóa hình dáng của mô hình chúng ta sẽ thu được giá trí hình dáng trung bình (mean shape). Với giá trị đó, kết hợp cùng tập điểm đánh dấu ta xác định được vùng cần quan tâm(patch). Với vùng này, chúng ta sẽ tiến hành mô hình hóa thống kê kết cấu. Đây cũng chính là phương pháp huấn luyện dữ liệu cho phương pháp AAM, dùng mô hình thông kê.
Hình 2.8. Hình ảnh mô tả quá trình huấn luyện dữ liệu bằng việc mô hình hóa thống kê hình dáng và kết cấu của đối tượng
2.2.2.1. Phương pháp phân tích đặc trưng chính (Principle component analysis - PCA) - PCA)
Trong phần này nhóm nghiên cứu sẽ không đi sâu vào phân tích kỹ PCA mà chỉ nêu lên ý tưởng chính của nó, vì AAM áp dụng nó để giảm số chiều tính toán của các vecto đặc trưng. Điều này ảnh hưởng rất lớn đến độ chính xác và tốc độ của AAM.
Như chúng ta đã biết với một tập n vecto d chiều thì chúng ta có nd phần tử cần thao tác tính toán. Khi số chiều hoặc số vecto tăng dần việc tính toán sẽ càng trở nên phức tạp và đòi hỏi chi phí tính toán lớn. Phương pháp PCA là giải pháp hữu hiệu cho vấn đề trên. Phương pháp cung cấp một trục chính (principle axis) p. Với tập dữ liệu cho trước ta hoàn toàn có thể tính được giá trị trung bình của chúng cũng như biểu diễn tất cả chúng lên trục tọa độ. Mỗi phần tử được biểu diễn bằng một tỷ lệ tuyến tính nhất định với phần tử trung bình. Những phần tử nằm xung quanh trục ở một ngưỡng nào đó có thể được đại diện bằng những phần tử nằm trên trục chính. Có thể biểu diển bằng công thức như sau
x x x bp (2.12)
Và được biểu diễn bằng hình ảnh trực quan như sau
Phương pháp này được áp dụng cho cả hai mô hình thông kê hình dạng và kết cấu và cả mô hình biểu diễn động để kiểm soát được sự biến thiên của 2 đặc trưng trên và tăng tốc độ tính toán của thuật toán.
2.2.2.2. Mô hình thông kê của hình dạng đối tượng
Giả sử chúng ta có một tập n điểm xiđược biểu diễn trong một hệ trục tọa độ. Nếu chúng ta có thể mô hình tập dữ liệu điểm trên thì chúng ta có thể sinh ra một mô hình có cấu trúc tương tự tập dữ liệu đã cho.
Cụ thể ta tìm kiếm mô hình tham số có dạng x M b ( ). Trong đó b là vector của tham số của mô hình. Với một dữ liệu ảnh nhất định, mô hình này có thể dùng để sinh ra những vecto mớix . Nếu chúng ta biết sự phân bố của các tham số cũng như sự phân bố của x thì chúng ta có thể tạo ra một cấu trúc tương tự với cấu trúc dữ liệu huấn luyện.
Đơn giản, chúng ta có thể tính từng bước như sau Tính giá trị trung bình của tập điểm xi
1 1 s i i x x s (2.13)
Tính ma trân biến đổi dữ liệu:
1 1 ( )( ) 1 s T i i i S x x x x s (2.14)
Áp dụng PCA, sau đó tính itương ứng với icủaS. chứa tvecto đặc trưng tương ứng với t vecto có giá trị đặc trưng lớn nhất. Từ đây, ta có thể xấp xỉ dữ liệu huấn luyện x như sau, và đây cũng chính là mô hình thống kê hình dạng đối tượng
Trong đó ( 1| 2 | ...|t)và blà tham số của mô hình biến đổi. Bằng việc biến đổi bchúng ta có thể biến đổi hình dạng của mô hình. Số tđược chọn dựa theo kết quả thực nghiệm nhưng thông thường t được chọn sao cho mô hình biểu diễn được lớn hơn hoặc bằng 98% tổng biến đổi của dữ liệu.
Một số ví dụ về mô hình hình dạng biến đổi khi thay đổi tham số
Hình 2.10. Ví dụ về hình dạng bàn tay khi thay đổi các tham số
Hình 2.11. Ví dụ về hình dạng khuôn mặt khi thay đổi các tham số
2.2.2.3. Mô hình thống kê của kết cấu đối tượng
Như đã trình bày ở trên để xây dựng mô hình thống kê cho kết cấu của đối tượng ta phải xác định được vùng quan tâm. Vùng quan tâm được xác định khi ta khớp điểm điều khiển (control point) của dữ liệu huấn luyện với hình dáng trung bình của dữ liệu ảnh bằng thuật toán tam giác hóa. Sau khi đã áp
dụng PCA để giảm độ phức tạp, ta tiến hành lấy mẫu với mỗi vector kết cấu