Xử lí ảnh số (DIP - Digital Image Processing) nói chung và nhận dạng đối tượng (Object Recognition) nói riêng, đã và đang được ứng dụng rất nhiều. Nó trải rộng trên mọi mặt trong cuộc sống từ xử lí các bản in ấn, báo, bìa tạp chí đến vấn đề về năng lực nhìn trong máy học, đôi khi nó rất gần gũi trong cuộc sống hàng ngày mà nhiều người không nhận ra như chức năng nhận dạng khuôn mặt, đối tượng chuyển động trong các máy ảnh, máy quay phim hay đơn giản là chức năng camera của điện thoại đi động cũng được tích hợp các công cụ xử lí ảnh và nhận dạng đối tượng. Đề cập sâu hơn vào vấn đề nhận dạng đối tượng là các bài toán cụ thể như nhận dạng dấu vân tay, nhận dạng khuôn mặt, nhận dạng chữ viết. Các bài toán này được ứng dụng rất nhiều trong nhận dạng đối tượng hình sự, phục vụ điều tra, kiểm chứng.
18 trang |
Chia sẻ: lylyngoc | Lượt xem: 1793 | Lượt tải: 0
Bạn đang xem nội dung tài liệu Đề tài Nhận dạng tổng thể đối tượng, để tải tài liệu về máy bạn click vào nút DOWNLOAD ở trên
THÔNG TIN CHUNG VỀ ĐỀ TÀI
1. Tên đề tài: Nhận dạng tổng thể đối tượng
2. Cấp dự thi: Cấp Bộ
3. Nhóm sinh viên thực hiện:
STT
Họ tên sinh viên
Lớp, khoa
Vai trò
1
Lê Đình Trường
ĐH Tin K10B, Khoa CNTT-TT
Nhóm trưởng
2
Lê Văn Hào
ĐH Tin K10B, Khoa CNTT-TT
Nhóm viên
3
Lê Ngọc Thanh
ĐH Tin K10B, Khoa CNTT-TT
Nhóm viên
4. Giáo viên hướng dẫn:
- ThS. Trương Thế Chuyên, Trưởng bộ môn khoa học máy tính, khoa CNTT-TT.
- Đồng hướng dẫn: ThS. Phạm Thế Anh, ThS. Lê Đình Danh, khoa CNTT-TT.
5. Thời gian thực hiện: 6 tháng (từ tháng 11/2010 đến tháng 5/2011).
6. Cơ quan quản lý đề tài: Trường Đại học Hồng Đức.
7. Đơn vị chủ trì đề tài: Khoa công nghệ thông tin và truyền thông
BẢNG CÁC KÍ HIỆU, CHỮ VIẾT TẮT DÙNG TRONG BÁO CÁO
Kí hiệu, chữ viết tắt
Được hiểu là
CSDL
Cơ sở dữ liệu
SIFT
Scale-invariant feature transform
DoG
Diffirence of Gaussian
NC
Nghiên cứu
MỤC LỤC
Mục
Tên chương, mục và tiểu mục
Trang
Thông tin chung về đề tài
01
Mục lục
02
Mở đầu
03
I
Sự cần thiết của đề tài
04
II
Mục tiêu của đề tài
04
III
Ý nghĩa khoa học, tính thực tiễn và khả năng ứng dụng
04
IV
Nội dung nghiên cứu
04
1
Tổng quan về SIFT
05
2
Nội dung Giải thuật
07
2.1
Dò tìm cực trị cục bộ
07
2.2
Trích xuất keypoint
10
2.3
Gắn hướng cho các keypoint
12
2.4
Tạo bộ mô tả cục bộ
13
3
Kĩ thuật đối sánh
14
4
Những đề xuất cải tiến, phát triển giải thuật SIFT
14
V
Kết quả
15
VI
Kết luận
18
VII
Tài liệu tham khảo
18
MỞ ĐẦU
Xử lí ảnh số (DIP - Digital Image Processing) nói chung và nhận dạng đối tượng (Object Recognition) nói riêng, đã và đang được ứng dụng rất nhiều. Nó trải rộng trên mọi mặt trong cuộc sống từ xử lí các bản in ấn, báo, bìa tạp chí đến vấn đề về năng lực nhìn trong máy học, đôi khi nó rất gần gũi trong cuộc sống hàng ngày mà nhiều người không nhận ra như chức năng nhận dạng khuôn mặt, đối tượng chuyển động trong các máy ảnh, máy quay phim hay đơn giản là chức năng camera của điện thoại đi động cũng được tích hợp các công cụ xử lí ảnh và nhận dạng đối tượng. Đề cập sâu hơn vào vấn đề nhận dạng đối tượng là các bài toán cụ thể như nhận dạng dấu vân tay, nhận dạng khuôn mặt, nhận dạng chữ viết. Các bài toán này được ứng dụng rất nhiều trong nhận dạng đối tượng hình sự, phục vụ điều tra, kiểm chứng.
Từ những ứng dụng rộng rãi như vậy mà tại các tổ chức, các trung tâm nghiên cứu của các trường đại học trên thế giới, các đề tài về xử lí ảnh luôn được đầu tư nhiều về vật chất lẫn thời gian. Tuy trong nước, ở các năm gần đây mặc dù các nghiên cứu về xử lí ảnh và nhận dạng đối tượng phát triển mạnh nhưng thông qua các cuộc hội thảo quốc gia thì vấn đề này chưa nhận được nhiều kết quả như mong đợi và cần đầu tư nhiều hơn nữa.
Trong vấn đề cụ thể nhận dạng đối tượng thì ngày nay hướng nghiên cứu phổ biến trên thế giới là việc sử dụng các điểm bất biến (Invarian Feature) trong ảnh làm đặc trưng (Keypoint) để nhận dạng. Tiêu biểu nhất trong các thuật toán đối sánh sử dụng keypoint dạng này là thuật toán SIFT (Scale-Invarian Feature Transform, David Lowe 1999 và 2004), SIFT có thể coi là thuật toán tiền đề cho các ứng dụng cũng như giải thuật khác về biến đổi đặc trưng bất biến trong ảnh. Các giải thuật đang ứng dụng trong thực tế khác đều dựa trên hay phát triển theo các nhánh riêng của SIFT.
Các đặc trưng trong SIFT không phụ thuộc vào các phép biến đổi ảnh cơ bản như xoay, thu phóng, thay đổi độ sáng... nên có thể xem tập các đặc trưng của một ảnh là thể hiện cho nội dung của ảnh đó. Vì vậy kết quả của việc nhận dạng sẽ có độ chính xác rất cao và thậm chí có thể khôi phục được đối tượng bị che khuất trong ảnh. Tuy nhiên giải thuật SIFT rất phức tạp trong cài đặt, đòi hỏi thời gian nghiên cứu và am hiểu nhiều thuật toán thành phần.
Trong phạm vi đề tài, em đã tìm hiểu sâu từng bước của giải thuật SIFT và thực hiện cài đặt thành công giải thuật và ứng dụng vào nhận dạng đối tượng tùy biến trong cơ sở dữ liệu đặc trưng được trích chọn từ ảnh.
Sự cần thiết của đề tài
Mặc dù được ứng dụng nhiều trên thế giới nhưng trong nước việc tìm hiểu và cài đặt các thuật toán nhận dạng sử dụng keypoint đang còn hạn chế, hiện tại rất hiếm các đề tài, công trình nghiên cứu, tài liệu tiếng Việt về vấn đề này. Vì vậy việc tìm hiểu, hoàn thành cài đặt cơ bản thuật toán là cần thiết.
Mục tiêu nghiên cứu
Chúng em thực hiện đề tài với mục tiêu chính là tìm hiểu, nắm rõ thuật toán SIFT và kĩ thuật dò tìm đặc trưng bất biến. Sau đó, dựa theo những điều tìm hiểu được, chúng em sẽ cài đặt từng phần của thuật toán và viết tài liệu tiếng Việt cùng mã nguồn nêu những hiểu biết đầy đủ về giải thuật SIFT.
ý nghĩa khoa học, tính thực tiễn và khả năng ứng dụng
Hiện nay trên thế giới đã và đang có những bước tiến nhanh trong lĩnh vực tra cứu ảnh dựa trên nội dung, tuy nhiên việc nghiên cứu, ứng dụng các thành quả này ở trong nước còn rất khiêm tốn. Về ý nghĩa khoa học thì đề tài tìm hiểu về những thuật toán mạnh nhất hiện nay về trích chọn đặc trưng và từ những bước tìm hiểu đó để đề xuất giải pháp cải thiện chi phí tính toán nhưng vẫn giữ được độ chính xác cần thiết.
Từ việc hiểu và cài đặt những thuật toán mạnh trên, sẽ thực hiện xây dựng một chương trình hoàn chỉnh để có thể đối sánh tính tương đồng các đối tượng trong các ảnh khác nhau hoặc tìm kiếm đối tượng trong CSDL lớn các ảnh.
Nội dung nghiên cứu
Nội dung nghiên cứu của đề tài bao gồm:
Tìm hiểu các thuật toán nhận dạng đối tượng sử dụng đặc trưng bất biến, trong đó trọng tâm là thuật toán SIFT.
Thực hiện cài đặt thuật toán SIFT và xây dựng chương trình nhận dạng đối tượng sử dụng SIFT.
Sau đây chúng em xin trình bày cụ thể nội dung nghiên cứu của đề tài.
Tổng quan về SIFT
Một thuật toán tiêu biểu và có hiệu quả khá cao là dựa theo các đặc trưng cục bộ bất biến trong ảnh: SIFT (Scale-invariant Feature Transform) do David Lowe đưa ra từ năm 2004 và đến nay đã có nhiều cải tiến trong thuật toán. Đặc trưng được trích chọn trong SIFT là các điểm đặc biệt (keypoint), các điểm này kèm theo các mô tả về nó và một véc tơ có lấy keypoint làm điểm gốc.
Có bốn giai đoạn chính được thực hiện trong thuật toán để trích xuất các điểm đặc biệt và các đặc trưng của nó bao gồm:
Dò tìm cực trị trong không gian đo (Scale-space Extrema Detection): Bước đầu tiên này sẽ áp dụng hàm sai khác Gaussian (DoG - Deffirence of Gaussisan) để tìm ra các điểm có khả năng làm điểm đặc trưng tiềm năng (candidate keypoints), đó là những đểm rất ít phụ thuộc (bất biến) vào sự thu phóng ảnh và xoay ảnh.
Lọc và trích xuất các điểm đặc biệt (Keypoint localization): Từ những điểm tiềm năng ở trên sẽ lọc và lấy ra tập các điểm đặc trưng tốt nhất (keypoints).
Gán hướng cho các điểm đặc trưng (Oriented Assignment): Mỗi điểm đặc trưng sẽ được gán cho một hoặc nhiều hướng dựa trên hướng gradient của ảnh. Mọi phép toán xử lý ở các bước sau này sẽ được thực hiện trên những dữ liệu ảnh mà đã được biến đổi tương đối so với hướng đã gán, kích cỡ và vị trí của mỗi điểm đặc trưng. Nhờ đó, tạo ra một sự bất biến trong các phép xử lý này.
Bộ mô tả điểm đặc trưng (Keypoint Description): Các hướng gradient cục bộ được đo trong ảnh có kích cỡ cụ thể nào đó trong vùng lân cận với mỗi điểm đặc trưng. Sau đó, chúng sẽ được biễu diễn thành một dạng mà cho phép mô tả các tầng quan trọng của quá trình bóp méo hình dạng cục bộ và sự thay đổi về độ sáng.
Tập các điểm đặc biệt thu được thường phụ thuộc rất ít vào các phép biến đổi cơ bản như xoay, phóng to, thu nhỏ, tăng giảm cường độ sáng, vì vậy có thể xem đây là các đặc trưng mang tính cục bộ của ảnh. Để đối sánh và nhận dạng hai ảnh thì ta tìm tập keypoint giống nhau trong hai ảnh, dựa vào hướng và tỉ lệ để có thể biết đối tượng trong ảnh gốc đã xoay, thu phóng bao nhiêu so với ảnh đem đối sánh. Cách tiếp cận của thuật toán này dựa vào điểm bất biến cục bộ của ảnh, chúng được trích xuất ra, được định hướng và mô tả sao cho hai keypoint ở hai vùng khác nhau thì khác nhau. Tuy nhiên một yếu tố ảnh hưởng không nhỏ đến tốc độ thuật toán là số lượng các keypoint được lấy ra là không nhỏ. Trung bình một ảnh kích thước 500 x 500 pixels thì sẽ trích xuất được khoảng 1000 điểm (số lượng điểm này phụ thuộc vào tùy từng ảnh và tham số lọc khác nhau). Số lượng các điểm đặc trưng có một tầm quan trọng trong vấn đề nhận dạng đối tượng, để nhận dạng một đối tượng nhỏ trong một ảnh chứa tập hợp các đối tượng hỗn độn thì cần ít nhất 3 điểm đặc trưng giống nhau để phát hiện và và bóc tách đối tượng.
Đối với vấn đề xây dựng một cơ sở dữ liệu ảnh và thực hiện nhận dạng đối tượng bất kì thì ban đầu thường sử dụng SIFT để tạo một hệ dữ liệu các đặc trưng (keypoints) được trích xuất từ dữ liệu ảnh gốc. Sau đó với mỗi ảnh đối tượng đem nhận dạng ta dùng giải thuật SIFT trích xuất tập đặc trưng từ ảnh và đem đối sánh với hệ dữ liệu đặc trưng để tìm ra tập keypoint giống nhau, từ đó nhận dạng đối tượng trong cơ sở dữ liệu ảnh ban đầu. Tuy nhiên việc đối sánh này cần chi phí đối sánh rất lớn đối với cơ sở dữ liệu ảnh có số lượng lớn do số lượng các đặc trưng ở mỗi ảnh là lớn.
Hình 1: Minh họa các bước chính trong giải thuật SIFT
Nội dung giải thuật
Dò tìm cực trị cục bộ
Như đã nêu ở trên, bước đầu tiên sẽ tìm các điểm tiềm năng có thể trở thành điểm đặc trưng bằng phương pháp lọc theo tầng dựa vào việc thay đổi tham số bộ lọc Gaussisan. Trong bước này, ta cần dò tìm các vị trí và các số đo (kích cỡ) mà chúng bất biến trong các khung nhìn khác nhau của cùng một đối tượng. Các vị trí đó bất biến về số đo có thể được dò tìm bằng cách tìm kiềm các đặc trưng ổn định trên toàn bộ các số đo có thể, sử dụng một hàm liên tục về số đo vốn rất nổi tiếng có tên là hàm không gian đo (Witkin 1983).
Theo các công bố của Koenderink (1984) và Lindeberg(1994) thì hàm Gaussian là hàm tốt nhất để biễu diễn không gian đo của ảnh 2 chiều. Vì vậy, không gian đo của một ảnh sẽ được định nghĩa như là một làm L(x,y,ó) được tạo ra bằng cách nhân chập ảnh gốc I(x,y) với môt hàm Gaussian G(x,y,ó) có tham số về số đo ó thay đổi.
L(x,y,ó) = G(x,y, ó) * I(x,y) (2.1.1)
Trong đó toán hạng * là phép nhân chập các ma trận 2 chiều x,y. Và G(x,y, ó) hàm Gaussian :
G(x,y,ó) = (2.1.2)
Để tìm những điểm đặc trưng có tính bất biến cao, thuật toán được sử dụng là tìm cực trị cục bộ của hàm sai khác DoG (Difference-of-Gaussian), kí hiệu là D(x,y,ó ). Hàm này được tính toán từ sự sai khác giữa 2 không gian đo cạnh nhau của một ảnh với tham số đo lệch nhau một hằng số k.
D(x,y,ó) = L(x,y,kó) – L(x,y,ó) = (G(x,y,kó) – G(x,y, ó)) * I(x,y)
(2.1.3)
Các lý do lựa chọn hàm Gaussian là vì nó là kỹ thuật rất hiệu quả để tính toán L (cũng như làm tăng độ mịn của ảnh), mà L thì luôn phải được tính rất nhiều để mô tả đặc trưng trong không gian đo, và sau đó, D sẽ được tính một cách đơn giản chỉ với phép trừ ma trận điểm ảnh với chi phí thực hiện thấp.
Hình 2. Quá trình tính không gian đo (L) và hàm sai khác D
Hơn nữa, hàm sai khác DoG có thể được sử dụng để tạo ra một sự xấp xỉ gần với đạo hàm bậc hai Laplace có kích thước chuẩn của hàm Gaussian (ó2Ñ2G) do tác giả Lindeberg đề xuất năm 1994. Ông đã chỉ ra rằng việc chuẩn hóa đạo hàm bậc hai với hệ số ó2 là cần thiết cho bất biến đo trở nên đúng. Cụ thể, ông đã công bố rằng các giá trị cực đại và cực tiểu của ó2Ñ2G chính là những giá trị có tính ổn định nhất (bất biến cao) so với một loạt các hàm đánh giá khác như : gradient, Hessian hay Harris.
Mối quan hệ giữa D và ó2Ñ2G được biễu diễn như sau :
(2.1.4)
Như vậy, Ñ2G có thể được tính thông qua việc xấp xỉ sự sai khác hữu hạn tại các tham số đo gần nhau kó và ó :
(2.1.5)
Do đó : (2.1.6)
Từ công thức này, ta thấy khi mà hàm sai khác DoG được tính toán tại các tham số đo lệch nhau một hằng số k, thì ta có thể sử dụng DoG để xấp xỉ đạo hàm bậc hai Laplace của Gaussian. Vì hệ số (k-1) trong phương trình trên là hằng số trong mọi không gian đo nên nó sẽ không ảnh hưởng đến việc tìm các vị trí cực trị. Sai số trong việc xấp xỉ đạo hàm bậc 2 tiến về 0 khi k gần với 1. Tuy nhiên, các kết quả thử nghiệm của tác giả cho thấy quá trình xấp xỉ đạo hàm không ảnh hưởng đến việc dò tìm các vị trí cực trị thậm chí ngay cả khi chọn k khá xa, ví dụ k=.
Sau khi áp dụng hàm DoG ta thu được các lớp kết quả khác nhau (scale) từ ảnh gốc, bước tiếp theo là tìm các cực trị trong các lớp kết quả theo từng miền cục bộ. Cụ thể là tại mỗi điểm trên các lớp kết quả sẽ được so sánh với 8 điểm lân cận trên cùng lớp và 9 điểm lân cận trên mỗi lớp khác (hình dưới).
Hình 3. Quá trình tìm điểm cực trị trong các hàm sai khác DoG
Trong hình trên: điểm đánh dẫu x sẽ được so sánh với 26 điểm lân cận (đánh dấu vòng tròn xanh). Điểm này sẽ được lấy làm điểm tiềm năng (điểm có thể làm điểm đặc biệt – candidate keypoint) nếu nó có giá trị lớn nhất hoặc nhỏ nhất so với 26 điểm lân cận như trên. Giải pháp cho việc tìm các điểm tiềm năng này là sử dụng thuật toán blob detection (dò tìm điểm) do Lindeberg đề xuất.
Vì số lượng các cực trị là rất lớn, vì vậy để tăng sự hiệu quả khi dò tìm các điểm cực trị (dò các điểm cực trị tốt nhất thay vì phải dò hết), ta cần xác định tần số lấy mẫu trong không gian đo và tần số lấy mẫu trong không gian quan sát (không gian ảnh). Thật không may là ta không thể xác định cả 2 loại tần số này một cách động trong mỗi tiến trình dò tìm. Thay vì vậy, các tần số này sẽ được xác định offline thông qua phương pháp thử nghiệm. Sau khi thử nghiệm với nhiều nguồn dữ liệu ảnh khác nhau, tác giả đã chỉ ra tần số lấy mẫu trong không gian đo tốt nhất là 3 (giữ lại 3 lớp trong mỗi bộ 8 lớp), và tần số lấy mẫu ó = 1.6.
Trích xuất keypoint
Sau bước 1 sẽ thu được rất nhiều điểm tiềm năng có thể làm điểm đặc biệt, tuy nhiên một số trong chúng là không cần thiết. ở bước tiếp theo này sẽ loại bỏ các điểm có độ tương phản kém (nhạy cảm với nhiễu) hoặc tính đặc trưng cục bộ ít hơn các điểm khác hoặc có xu hướng là đường biên đối tượng. Bước thực hiện này gồm 3 công đoạn :
Phép nội suy lân cận cho vị trí đúng của điểm tiềm năng:
Phép nội suy lân cận () sử dụng mở rộng Taylor (Taylor expansion) cho hàm Difference-of-Gaussian D(x,y,ó) :
(2.2.1)
Trong đó : D và đạo hàm của nó được tính tại một điểm tiềm năng và X = (x,y,ó) là khoảng cách từ điểm đó. Vị trí của điểm cực trị được xác định bằng cách lấy đạo hàm của hàm trên với đối số X và tiến dần đến 0 :
Hình 4 : Mô phỏng sử dụng công thức mở rộng của Taylor cho hàm DoG
(2.2.2)
Nếu > 0.5 theo một chiều nào đó thì nó có chỉ số cực trị không gần với các điểm tiềm năng khác, nó sẽ bị thay đổi và phép nội suy sẽ thay thế vai trò của nó bằng điểm khác gần nó.
Hình 5. Minh họa các bước của quá trình lựa chọn các điểm keypoints. (a) là ảnh gốc. (b) mô tả 832 điểm keypoints tìm được, các điểm keypoints được vẽ ở dạng một vector thể hiện 3 thông tin : vị trí, hướng và độ dài. (c) sau khi đặt ngưỡng tương phản tổi thiểu, ta giữ lại được 729 điểm. (d) Giữ lại 536 điểm sau khi áp một ngưỡng nữa về hệ số độ cong.
Loại trừ các điểm có tính tương phản kém:
Các điểm nhạy cảm với độ sáng và nhiễu thì không được trở thành điểm đặc biệt và cần loại bỏ khỏi danh sách điểm tiềm năng. Trong khai triển Taylor mở rộng ở trên, nếu điểm tiềm năng nào có giá trị < 0.03 thì điểm đó sẽ bị loại, ngược lại thì nó được giữ lại theo vị trí mới (y+) và tùy biến ó, với y là vị trí cũ của nó cùng giá trị biến ó.
Loại bỏ các điểm dư thừa theo biên :
Sử dụng hàm DoG sẽ cho tác động mạnh đến biên khi vị trí của biên là khó xác định và vì vậy các điểm tiềm năng trên biên sẽ không bất biến và bị nhiễu. Và để tăng sự ổn định cho các điểm sẽ được chọn làm điểm đặc biệt ta sẽ loại trừ các điểm tiềm năng khó định vị (tức là vị trí dễ thay đổi khi có nhiễu do nằm ở biên).
Sau khi áp dụng hàm DoG sẽ làm đường biên ảnh không rõ ràng và độ cong chính sẽ có giá trị lớn hơn nhiều so với độ cong dọc theo biên vì vậy cần loại bỏ bớt các điểm đặc biệt dọc theo cùng một biên. Giải pháp cho việc này là sử dụng giá trị của ma trận Hessian cấp 2 :
(2.2.3)
Các giá trị riêng của H tỉ lệ thuận với độ cong của D, các giá trị riêng â (giá trị nhỏ) và á (giá trị lớn) có tỉ lệ r = á/â sẽ được sử dụng. Các phần tử của H là Dxx và Dyy
Gắn hướng cho các keypoint
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, q (x,y) là hướng. Hai giá trị cuối được tính toán như sau :
(2.3.1)
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 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.
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.
Những đề xuất cải tiến, phát triển thuật toán SIFT
Giảm số lượng keypoint trích xuất ở