Luận văn này sẽ thực hiện nhận dạng vân tay bằng ảnh số theo hướng có thể triển khai trong dân sự.. Nguyên lý hoạt động của Công nghệ nhận dạng vân tay: Quá trình xử lý dữ liệu sẽ được
Trang 1HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
-
CÁP TUẤN BIÊN
THIẾT KẾ HỆ THỐNG NHẬN DẠNG VÂN TAY TỪ ẢNH SỐ
Chuyên ngành: KHOA HỌC MÁY TÍNH
Mã số: : TÓM TẮT LUẬN VĂN THẠC SỸ KĨ THUẬT
HÀ NỘI – NĂM 2013
Trang 2Luận văn được hoàn thành tại:
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
Người hướng dẫn khoa học: TS TRỊNH ANH TUẤN
Phản biện 1: ……… ………
Phản biện 2 : ………
Luận văn sẽ được bảo vệ trước Hội đồng chấm luận văn thạc sĩ tại Học viện Công nghệ Bưu chính Viễn thông
Vào lúc: .giờ ngày tháng năm
Có thể tìm hiểu luận văn tại:
- Thư viện của Học viện Công nghệ Bưu chính Viễn thông
Trang 3PHẦN I: MỞ ĐẦU
1 Lời nói đầu:
Ngày nay, việc thu thập, xử lý thông tin qua ảnh để nhận biết đối tượng đang được quan tâm và ứng dụng rộng rãi Với phương pháp này, chúng
ta có thể thu nhận được nhiều thông tin
từ đối tượng mà lại không cần tác động
nhiều đến đối tượng nghiên cứu
2 Giới thiệu:
Nhận dạng vân tay là một bộ phận của nhận dạng sinh học Khoa học nhận dạng vân tay cũng đã hình thành từ khá lâu Nhưng tới thời gian gần đây, cùng với sự ra đời của máy tính nó mới đạt được nhiều kết quả quan trọng và trở
Trang 4thành một trong những phương pháp sinh trắc có độ tin cậy nhất
Luận văn này sẽ thực hiện nhận dạng vân tay bằng ảnh số theo hướng
có thể triển khai trong dân sự Có 3 phương pháp:
Phương pháp thứ nhất: sử dụng đặc trưng tương quan của hai mẫu vân tay
Phương pháp thứ hai: dựa trên cơ
sở phát hiện và sử dụng các điểm nút đặc trưng (minutiae)
Phương pháp thứ ba: sử dụng các
đặc trưng về đường vân
3 Trọng tâm của luận văn tập trung vào hai phần:
Tạo vec-tơ đặc tính cho mục đích
Trang 5phân loại kiểu vân tay và cho đối sánh vân tay (feature extraction)
Sử dụng các điểm minutiea đã trích chọn bước trước để đối sánh nhận dạng
vân tay (minutiae matching)
4 Luận văn trình bày theo cấu trúc:
Chương I: Vân tay trong sinh trắc học
Chương II: Trích chọn đặc tính
vân tay và đối sánh vân tay
Chương III: Xây dựng hệ thống
thử nghiệm Ví dụ minh họa
Trang 6PHẦN II: NỘI DUNG
CHƯƠNG I: VÂN TAY
TRONG SINH TRẮC HỌC
Thực chất việc lấy dấu vân tay dùng để làm gì? Việc lấy dấu vân tay nhằm mục đích làm cơ sở dữ liệu Gồm 2 quá trình chính trong việc lấy dấu vân tay như sau :
1 Xác nhận dấu vân tay ( fingerprint verification )Tại bước này một người sẽ cung cấp dấu vân tay cùng với chứng minh thư nhằm tạo ra một cơ sở dữ liệu tương ứng dấu vân tay và thẻ chứng minh thư
2 Nhận diện dấu vân tay (finger identification ) Bước này sẽ không cần
Trang 7dùng tới chứng minh thư nữa Dấu vân tay sẽ được đưa vào để đối chiếu với database chứa các vân tay
Chương trình xử lý thuật toán trong luận văn thiết kế theo mô-đun và
có thể tận dụng cho các khâu khác cùng
hệ thống Hệ thống thiết kế có tính mở
Có khả năng thay thế các mô-đun thực hiện thuật toán Cơ sở dữ liệu ảnh có thể bổ sung thêm dễ dàng
1 Vai trò của nhận dạng vân tay trong sinh trắc học
Công nghệ sinh trắc học : dùng
để nhận dạng Ai là Ai qua vân tay,
Trang 8mống mắt, giọng nói, các đặc điểm trên mặt, trên người Tất cả các đặc điểm trên đều giúp chúng ta nhận ra Ai là Ai Tuy nhiên theo các nghiên cứu thì vân tay là một đặc điểm nhận dạng có tính
chất ưu việt nhất và phổ biển nhất
Nguyên lý hoạt động của Công nghệ nhận dạng vân tay: Quá trình xử
lý dữ liệu sẽ được thiết bị chuyển sang các dữ liệu số và ra thông báo rằng dấu vân tay đó là hợp lệ hay không hợp lệ
để cho phép hệ thống thực hiện các chức năng tiếp theo Có hai phương pháp để lấy dấu vân tay:
- Cách thứ nhất (cổ điển) là sao chép lại hình dạng vân tay (như lăn tay,
Trang 9hay chạm vào một vật gì đó) thông qua máy quét ghi nhận và xử lý
- Cách thứ hai được xem là "đọc" dòng điện dưới ngón tay thông qua hệ thống khuyếch đại xung điện, rồi chuyển thành vân tay
Ngày nay việc ứng dụng công nghệ sinh trắc học về nhận dạng vân tay được sử dụng ngày càng nhiều vì nó đáp ứng yêu cầu bảo vệ dữ liệu, đảm bảo an ninh an toàn với độ chính xác cao
Thuật toán so khớp vân tay:
Thuật toán gồm hai bước: giai đoạn thứ nhất là thiết lập quần thể và giai đoạn hai là sự tiến hóa dựa vào di
Trang 10truyền Thuật toán được trình bày tóm tắt như sau:
1) Áp dụng toán tử so khớp cục bộ để thiết lập quẩn thể ban đầu gồm P cá thể được biểu diễn dạng vector các số thực 2) Tính toán giá trị thích nghi dựa vào phương trình (8) cho mỗi cá thể trong quần thể ban đầu
3) Lặp lại các bước cho đến khi gặp điều kiện dừng
4) Chọn P/2 cá thể có độ tích nghi cao (bằng phương pháp đấu chọn kích thước k [23], k=5 trong thực nghiệm) trong quần thể làm cá thể bố mẹ
5) Sản sinh ra thế hệ con sử dụng phép lai ghép các cá thể bố mẹ này và sau đó
Trang 11áp dụng phép đột biến theo phương pháp Gaussian lên cá thể con
6) Tính toán giá trị thích nghi của các cá thể con mới tạo ra
7) Tạo ra quần thể mới có kích thước P gồm các cá thể bố mẹ và các cá thể con sinh ra từ lai ghép và đột biến
8) Chọn các thể có giá trị thích nghi cao nhất trong quần thể là giá trị tương quan cần tìm
1.2 Uniqe là một thuộc tính của vân tay
Cho đến nay, vẫn chưa có bằng chứng xác thực 100% vân tay trên các ngón tay tuyệt đối mang tính cá nhân và không hề lặp lại Câu trả lời chính xác
Trang 12chỉ có được khi đem so sánh từng mẫu vân tay của mười đầu ngón người với hơn sáu tỉ người còn lại
- Tính “phổ thông”, mọi người đều có
- Tính cá nhân và không lặp lại Xác suất trùng khớp với người khác gần bằng không
- Tính “bất biến” Hình dạng tổng thể của vân tay trên các ngón tay của con người không thay đổi theo thời gian Ngay cả trường hợp bị chấn thưong nhẹ, dấu vân tay vẫn có khả năng khôi
Trang 13chúng ta có thể lựa chọn được đặc tính cần trích chọn và dự kiến phương án nhận dạng
1.4 Khó khăn gặp phải khi nhận dạng vân tay
Tùy vào điều kiện thu nhận ảnh dẫn đến chất lượng ảnh thu thập nên nhiều khi các chi tiết trên mẫu vân tay không biểu hiện hiện rõ ràng
Tuy vậy trong thực tế cũng có nhiều mẫu vân tay thu thập trong điều kiện tốt nên có chất lượng cao
Trang 14CHƯƠNG II ĐẶC TÍNH VÂN TAY VÀ ĐỐI SÁNH VÂN TAY
2.1 Đại cương về ảnh số và xử lý ảnh trong Matlab
Trong phần này sẽ trình bày tóm tắt về ảnh số và một số thuật toán xử lý
ảnh số trong Matlab
2.2 Đại cương về ảnh số:
Ảnh có thể biểu diễn dưới dạng tín hiệu tương tự hoặc số Trong phần này
sẽ tập trung vào biểu diễn ảnh số, cơ sở
về mầu và việc chuyển đổi màu
2.2.1 Biểu diễn ảnh số:
Với ảnh màu các giá trị tại mỗi
Trang 15phần tử của ma-trận biểu diễn ba màu riêng biệt gồm: đỏ (Red-R), lục (Green-G) và lam (Blue-B) Để biểu diễn cho
ba màu riêng rẽ cần 24-bit, 24-bit này được chia thành ba khoảng 8-bit Mỗi khoảng này biểu diễn cho cường độ
sáng của một trong các màu chính
2.2.2 Cơ sở về màu:
Ánh sáng màu là tổ hợp các ánh sáng đơn sắc Mắt người có thể cảm nhận được một số màu nhất định nhưng lại có thể phân biệt được rất nhiều màu (trong vùng quang nhìn thấy, có dải bước sóng 400nm ÷ 750nm ) Cảm nhận màu của con người phụ thuộc vào
ba thuộc tính B, H, S
Trang 16H (hue): sắc lượng,
S (saturation): độ bão hòa
B (brightness): độ chói,
Tổ hợp B, H, S đối với từng ánh sáng màu trong ba màu này giúp mắt con người có thể phân biệt được hàng ngàn màu R, G, B còn được gọi là các màu cơ sở
Phân bổ phổ năng lượng của một nguồn sáng màu có bước sóng l ký hiệu
là C (l) và việc tổ hợp màu theo ba màu
cơ sở (có các đường cong cảm nhận S1, S2, S3)
Tổ chức quốc tế về chẩn hóa màu CIE đã đưa ra một số không gian màu như: RGB, CMY, CMYK, HIS,…
Trang 17Trong đó mô hình RGB có vai trò quan trọng
2.2.3 Chuyển đổi màu:
Hệ tọa độ màu do CIE quy định như một hệ quy chiếu và trên thực tế không thể biểu diễn hết các màu
2.3 Xử lý ảnh số trong Matlab:
Đứng về mặt xử lý tín hiệu nói chung và xử lý ảnh nói riêng, Matlab là công cụ rất mạnh Trong Matlab có nhiều Toolbox hỗ trợ các ứng dụng chuyên sâu Với bài toán nhận dạng hình ảnh, các Toolbox thường được sử dụng gồm:
- Image Processing Toolbox
- Image Acqusition Toolbox
Trang 18- Wavelet Toolbox
- Signal Processing
- Statistics Toolbox
- Neural Network Toobox
Hiện nay, MATLAB dù đã được
sử dụng khá phổ biến trên thế giới, còn khá mới mẻ đối với chúng ta Vì thế, tôi xin trình bày chút hiểu biết cơ bản tích lũy sau một thời gian tiếp cận với MATLAB trong toán giải tích nhiều biến
Tổng quan, có 2 cách để thực hiện lệnh trên MATLAB :
1 Trực quan từng lệnh một (MẶC ĐỊNH)
Trang 192 Script – một tập hợp lệnh (ở dạng tênfile.m)
2.3.1 Histogram:
Histogram (lược đồ xám) thể hiện tần suất xuất hiện mỗi mức xám trong ảnh
2.3.2 Phân ngưỡng cục bộ:
Phân ngưỡng với mục đích làm tăng độ tương phản các đối tượng cần quan tâm đông thời loại bớt nhiễu Nếu phân ngưỡng toàn bộ ảnh nhiều khi tỏ
ra không hiệu quả, nhất là khi cường độ sáng của ảnh không đồng đều
2.3.3 Biến đổi Fourier-2D rời rạc:
Biến đồi Fourier rời rạc trong xử lý ảnh số nhằm mục đích lọc lấy các thành
Trang 20phần tín hiệu ảnh có tần số trội
2.3.4 Lọc ảnh Sobel:
Lọc Sobel là một trường hợp của lọc số tuyến tính Nghĩa là bộ lọc dùng một convolution-mask (cửa sổ dùng để nhân chập, gọi tắt mask), rồi lấy tổng có trọng số các điểm lân cận với điểm ở chính giữa trong mask đó Di chuyển mask trên toàn bộ miền tín hiệu ảnh, mỗi bước một pixel, cuối cùng thu ảnh kết quả
2.3.5 Phát hiện biên bằng toán tử gradient:
Sử dụng toán tử gradient trong miền 2D là một trong các phương pháp dùng để phát hiện biên Toán tử định
Trang 21nghĩa như là một vec-tơ hai thành phần:
//
x y
2.4 Sơ đồ khối thiết kế hệ thống nhận dạng vân tay
2.4.1 Các nguyên lý nhận dạng vân tay:
Các nguyên lý nhận dạng vân tay thì liên quan chặt chẽ đến cách thức tìm
ra sự tương đồng giữa ảnh vân tay đầu
Trang 22vào với một template trong cơ sở dữ liệu vân tay Ba phương pháp chính:
a) Phân loại hệ thống theo kiến trúc:
- Hệ thống có kiến trúc song song
- Hệ thống có kiến trúc nối tiếp
- Hệ thống có kiến trúc thứ bậc
b) Phân loại hệ thống theo các xử lý dữ liêu:
Trang 23- Hệ thống có khâu hợp nhất sau trích chọn đặc tính
- Hệ thống có khâu hợp nhất sau đối sánh
- Hệ thống có khâu hợp nhất sau tổng hợp kết quả
2.4.3 Xây dựng hệ thống nhận dạng vân tay bằng ảnh số:
Trên cơ sở các phân tích đã nêu, sau đây là đề xuất về sơ đồ khối hệ thống nhận dạng vân tay bằng ảnh số
Hệ thống này có khả năng phân loại vân tay, tạo cơ sở dữ liệu và nhận dạng vân tay
- Kiểu nhận dạng là identification, nghĩa là một mẫu cần nhận dạng (input)
Trang 24sẽ nhận kết quả bằng cách đối sánh với
N mẫu khác trong cơ sở dữ liệu (template)
- Kiểu chế độ hoạt động của hệ thống hướng đến là online Nghĩa là hệ thống
có thể hoạt động liên tục, có khả năng ghép với khâu thu thập số liệu sử các phương pháp thu nhận ảnh live-scan (bằng máy scan, sensor,…) và quan trọng hơn có thể vừa thu thập số liệu vừa có thể nhận dạng
- Kiến trúc hệ thống thiết kế theo hướng
xử lý dữ liệu nối tiếp
2.5 Tập mẫu ảnh vân tay
Vân tay có thể lưu trữ theo hai cách: trên giấy (giấy thường, giấy
Trang 25áp dụng được cho công đoạn khác Nhưng các phương pháp lựa chọn phải đạt yêu cầu cho bài toán nhận dạng cuối cùng Vì vậy, tạo tính mở cho hệ thống
và tiết kiệm thời gian thiết kế
2.6.1 Chuẩn hóa ảnh đầu vào:
Chuẩn hóa ảnh đầu vào là bước cần thiết trước khi vào bước tiền xử lý ảnh Do ảnh dùng cho trích trọn đặc tính có thể không phù hợp về kích
Trang 26thước cũng như phân bố mức xám Trong luận văn, giai đoạn này gồm: chuẩn hóa kích thước ảnh và đồng đều hóa cường độ sáng giữa các ảnh đầu
vào khác nhau
Chuẩn hóa kích thước ảnh:
Ảnh chuẩn đầu vào có kích thước
364 x 256 pixel Các thuật toán xử lý ảnh vân tay về sau thường áp dụng cho từng từng block vuông trên ảnh (thường
sử dụng các block vuông cạnh 16 pixel,
32 pixel,…) Nên kích thước ảnh chuẩn hóa hợp lý hơn là 352´ 256 pixel
Cân bằng cường độ sáng của ảnh:
Do điều kiện thu thập ảnh khác
Trang 27nhau với mỗi lần lấy mẫu vân tay; do
kỹ thuật thu nhận ảnh (sử dụng sensor, scanner,…) khác nhau nên độ sáng ảnh vân tay không gần nhất
2.6.2 Tăng cường ảnh chất lượng ảnh:
Hai thuật toán sử dụng để tăng cường ảnh chất lượng ảnh ở đây là: histogram equalization (cân bằng lược
đồ xám) và biến đổi Fourier rời rạc
Tăng cường ảnh bằng cân bằng histogram:
Histogram của ảnh xám là một biểu đổ thể hiện quan hệ giữa cường độ ảnh và số pixel có cùng cùng cường độ ảnh đó
Trang 28Tăng cường ảnh bằng biến đổi Fourier-2D:
Sử dụng lọc Gabor và biến đổi Fourier là hai nền tảng chính để thực hiện tăng cường ảnh trong xử lý ảnh vân tay
2.6.3 Ước lượng orientation image
và khoanh vùng ảnh vân tay:
Trong phần này sẽ trình bày các
ước lượng định hướng vân tay cục bộ
Ước lượng orientation image:
Trường định hướng thể hiện bản chất tự nhiên của đường vân và các rãnh đường vân Trường định hướng cung cấp nhiều thông tin quan trong cho các bước xử lý tiếp theo
Trang 29Khoanh vùng ảnh vân tay:
Khoanh vùng ảnh vân tay nhằm mục đích phân chia các vùng khác nhau trên ảnh vân tay Một ngưỡng Tc được đặt ra và block đó định nghĩa làm:
- background nếu C (i, j) < Tc ,
- foreground nếu C (i, j ) < Tc
2.6.4 Trích chọn minutiae:
Giai đoạn này bao gồm: nhị phân hóa ảnh bằng thuật toán local threshold với ảnh đã được tăng cường kết hợp với kết quả khoanh vùng ảnh vân tay ở phần trên; sau đó với ảnh có các đường vân đã được làm mảnh đến độ rộng một pixel thì thực hiện tìm minutiae bằng thuật toán crossing number
Trang 30Nhị phân hóa và làm mảnh đường vân:
Sau tăng cường ảnh bằng biến đổi Fourier rời rạc, đường vân tây đã nổi rõ hơn so với ảnh ban đầu
thể hiện sự khác biệt trên từng ngón tay 2.6.5 Hiệu chỉnh đường vân và lọc minutiae sai:
Hiệu chỉnh đường vân và lọc
Trang 31minutiae sai cấp một:
Giai đoạn này thực hiện hiệu chỉnh các vân tay và các tín hiệu cho là nhiễu (đoạn vân ngắn, chẽ nhánh cụt, vòng xuyến nhỏ…) sẽ được loại đi Như vậy
sẽ làm tăng tính xác thực của các minutiae đã trích chọn được so với ảnh vân tay gốc ban đầu
Lọc minutiae sai cấp hai và tạo
mã từ minutiae:
Các minutiae trích chọn cuối cùng này sẽ được lưu trữ thành file tạo template cho cơ sở dữ liệu Thông tin
lưu trữ là tọa độ, định hướng minutiae
2.7 Phân loại kiểu vân tay
Quá trình phân loại vân tay được