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 thước cũng như phân bố mức xám. Trong đồ á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.
4.1.1.1. Chuẩn hóa kích thước ảnh
Ảnh chuẩn đầu vào có kích thước 364×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. Để thực hiện điều này sẽ “cắt” đi vùng dữ liệu ảnh kích thước
12 256× pixel. Phần này cũng không ảnh hưởng quá nhiều tới kết quả nhận dạng cuối cùng vì đối với bộ dữ liệu đã chọn, các vùng ảnh ở gần khung thường đóng vai trò làm background.
4.1.1.2. Cân bằng cường độ sáng của ảnh
Do điều kiện thu thập ảnh khác nhau 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. Vì vậy cần làm đồng đều cường độ sáng của các ảnh vân tay trong bộ dữ
liệu. Phương pháp thực hiện: dùng một ảnh mẫu có cường độ sáng đồng đều, rồi chuẩn hóa độ sáng của các ảnh khác theo ảnh này bằng bình phương cực tiểu. Trong luận văn sử dụng ảnh có cùng kích thước cường độ sánh các điểm ảnh I i j[ ], =128
(là mức xám trung bình trong 255 mức).
4.1.2. Tăng cường chất lượng ảnh
Thu nhận ảnh không phải lúc nào cũng cho những ảnh với chất lượng tốt. Tăng cường ảnh sẽ giúp cải thiện chất lượng ảnh trước khi thực hiện các thuật toán xử lý
ảnh tiếp theo nhằm gia tăng hiệu quả xử lý. 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 đổiFourier rời rạc [2].
Chương 4: Nhận dạng vân tay
a) b) c)
Hình-4. 2: Tăng cường ảnh
a) ảnh ban đầu; b) ảnh sau cân bằng histogram; c) ảnh sau biến đổi Fourier rời rạc.
Đầu tiên thực hiện 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 đó. Cân bằng histogram sẽ làm đồng đều cường độ sáng trong bản thân ảnh đó.
Tiếp theo, sử dụng lọc Gabor và biến đổi Fourier làm nền tảng để thực hiện tăng cường ảnh trong xử lý ảnh vân tay. Ảnh sau khi đã được tăng cường chất lượng bằng histogram equalization, thực hiện bước kế tiếp là tăng cường ảnh bằng thuật toán biến đổi Fourier [2, 19].
So với các phương pháp trên cơ sở lọc Gabor, nó lợi thế hơn ở chỗ không yêu cầu việc tính toán chính xác định hướng cục bộ của đường vân và tần số vân tay phục vụ cho mục đích cuối công đoạn tạo ridge-map.
Công thức tính toán cho thuật toán tăng cường ảnh bằng biến đổi Fourier rời rạc có dạng như sau: { ( ) ( )}k enh F F I x y F I x y I = −1 [ , ] ⋅ [ , ] trong đó: k : hệ số mũ của phổ Fourier, [ ] ( ) F I x,y : phổ Fourier.
Luận văn thực hiện tăng cường chất lượng ảnh bằng biến đổi Fourier rời rạc cho từng block có kích thước 32×32pixel. Theo cách này, các thành phần ảnh có tần số
trội sẽ được giữ lại, đó là các vùng ảnh thể hiện làm đường vân. Ảnh sau biến đổi Fourier rời rạc có các đường vân “nổi” hơn, sự phân tách giữa các đường vân cũng thể hiện rõ ràng hơn. Đồng thời các vùng ảnh nhiễu sẽ loại bớt đi.
Số mũ của phổ Fourier, k đóng vai trò làm hệ số điều chỉnh. Trong [1], khuyến nghị đặt k=0,6 khi tính toán với kích thước block như trên. Tuy nhiên, trong quá trình thực hiện, đặt k=0,35 thì cho kết quả tốt hơn so với việc chọn giá trị khác. Vì phổ Fourier đóng vai trò làm hàm lọc, do đó: k càng nhỏ hàm lọc tiến tới 1 (ảnh gốc và ảnh sau khi tăng cường không khác nhau nhiều); với k lớn, các đoạn vân cục bộ
có thể bị biến dạng không còn khả năng xử lý cho công đoạn tiếp nữa.
4.1.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ộ. Đây là cần thiết để chọn được các thông số thích hợp để lọc ảnh về sau (lọc nhiễu, khoanh vùng ảnh...). Vì orientation image (trường định hướng) mang tính mô tả góc định hướng đường vân, nên kết quả này còn được áp dụng để phân loại kiểu vân tay (quyết định bởi sự tạo hình của các đường vân).
4.1.3.1. Ướ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. Phần này sẽ trình bày về ước lượng orientation image D, phần tử định hướngθij(tương ứng với nó là góc định hướng θijvà mô-đun định hướng). Có sự
phân biệt khác nhau giữa các thuật ngữ mô tả phần tử định hướng orientation (có [ ]0,
ij
θ ∈ π ), direction (có θij∈[0, 2π])khi tính toán trường định hướng.
Nguyên lý thực hiện tính định hướng: chia ảnh thành các khối w×w, sau đó khảo sát lần lượt định hướng cục bộ của đường vân trong từng khối đó. Orientation image sẽđược ước lượng bằng phương pháp Gradient.
Chương 4: Nhận dạng vân tay
a) b)
Hình-4. 3: Ước lượng orientation image
a) ảnh vân tay ban đầu; b) orientation image tương ứng
Các công thức tính toán: ( ) ∑ ∑+ ( ) ( ) − = + − = = 2 2 2 2 , , 2 , w i w i u w j w j v y x n i j g u v g u v G , ( ) ∑ ∑+ ( ( ) ( )) − = + − = − = 2 2 2 2 2 2 , , , w i w i u w j w j v y x d i j g u v g u v G , ( ), 1 ( )( ), 2 , n d G i j i j arctg G i j θ = ⎛⎜⎜ ⎞⎟⎟ ⎝ ⎠.
Ở đây: gx( )i,j , gy( )i,j là các gradient tại ( )i, j theo các trục x, y và tính bằng toán tửSobel.
4.1.3.2. Khoanh 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. Ởđây, chúng ta quan tâm đến foreground/background (ảnh nền và ảnh trên nền) cùng với biên ảnh vân tay. Trong nhận dạng vân tay, vùng ảnh mang thông tin hữu ích giới hạn bởi vùng có các đường vân (đóng vai trò làm foreground). Vùng
ảnh còn lại thường là các nhiễu tạo ra trong quá trình thu nhận, sao chép, lưu trữ ảnh… (đóng vai trò làm background) cần được tách ra khỏi foreground. Khoanh vùng ảnh vân tay nằm trong nhóm thuật toán segmentation. Tổng quát, nó dựa vào hai tính chất của ảnh số liên quan đến cường độ sáng để thực hiện, đó là: sự không liên tục và sự tương tự nhau.
Ảnh vân tay trong đồ án sẽ khoanh vùng lấy vùng hữu ích dựa vào cả hai tính chất kể trên. Tiêu chí đánh giá là certainty level (một giá trị thể hiện sự biến thiên của cường độ sáng theo các đường vân). Theo cách này vùng ảnh đóng vai trò
background và foregroundđược phân tách nhờ một ngưỡng đặt trước.
Công thức tính certainty level cho từng block kích thước w w× , trọng tâm tương
ứng của block có tọa độ [ ]i j, như sau: ( ) ( ) ( )( ) j i G j i G j i G w w j i C s d n , , , 1 , 2 2+ × =
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.
Phương pháp này có lợi thế kế thừa được các kết quả tính toán trong phần ước lượng orientation image.
a) b) c)
Hình-4. 4: Khoanh vùng ảnh vân tay
a) ảnh ban đầu; b) variance field; c) ảnh đã khoanh vùng đường vân.
4.1.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.
Chương 4: Nhận dạng vân tay
a) b)
Hình-4. 5: Thông số của hai dạng minutiae quan trọng a) bifurcation; b) termination
4.1.4.1. Nhị 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. Đây là lúc sử dụng thuật toán local threshold chuyển đổi ảnh xám
đã tăng cường chất lượng đó thành ảnh đen trắng.
a) b)
Hình-4. 6: Nhị phân hóa và làm mảnh đường vân a) ridge-map; b) thinned ridge-map.
Kích thước cửa sổ 32×32 pixel trong biến đổi Fourier rời rạc thì kích thước block
cho phân ngưỡng cục bộ có thể là: 32 32× ,32 16× ,16 16× ,16 8× pixel… Thử nghiệm với block16 16× pixel thì cho kết quả tốt hơn (các đường vân tách biệt rõ ràng hơn).
Ảnh này tiếp tục được làm mảnh bằng thuật toán morphology cho ảnh đen trắng sau cùng với đường vân thể hiện bằng đường màu trắng (giá trị logic 1) có độ rộng
4.1.4.2. Phát hiện minutiae
Vân tay sau khi đã làm mảnh có thể bắt đầu tìm các minutiae. Thuật toán dùng để
phát hiện minutiae sử dụng trong đồ án là crossing number. Nó dùng một cửa sổ
kích thước 3 3× pixel, lấy tất cả các điểm ảnh trong cửa sổ, sau đó khảo sát giá trị
logic của các điểm ảnh xung quanh điểm ảnh [ ]i j, ở chính giữa cửa sổđó. Tùy vào kết quả tính toán của biểu thức crossing number thì kết luận rằng: điểm [ ]i j, đang xét là một điểm phân nhánh, điểm cụt hay đang nằm trên một đường vân.
Công thức tính như sau: ∑ ( ) ( ) = − − = 8 1 1 8 mod 2 1 ) ( i i i val p p val p cn
Ảnh sử dụng phát hiện các minutiae phải là ảnh nhị phân, do đó val( ) { }p ∈ 0,1 . Các biến p1, p2,..., p7 thứ tự tạo thành các điểm lân cận điểm giữa cửa sổđang khảo sát xét theo một chiều thuận hoặc ngược kim đồng hồ.
a) cn(p) = 2 b) cn(p) = 2
a) cp(n) = 3 d) cn(p) = 1
Hình-4. 7: Phát hiện minutiae
a), b) pixel trên đường vân; c) bifurcation minutiae; d) termination minutiae.
Khi đó định nghĩa điểm [ ]i j, đang xét là:
Chương 4: Nhận dạng vân tay
• termination minutiae nếu cn(p) = 1,
• bifurcation minutiae nếu cn(p) = 3.
Thuật toán tìm kiếm và giá trịcrossing number có vai trò quan trọng. Không những
được dùng trong việc phát hiện minutiae mà nó còn giúp loại bỏ các minutiae sai (được cho là nhiễu).
4.1.4.3. Ước lượng khoảng cách đường vân
Vân tay trên ngón tay không giống nhau giữa mỗi người. Ngay cả trường hợp ở
một người, các đường vân cũng thể hiện sự khác biệt trên từng ngón tay. Do vậy,
ước lượng khoảng các đường vân được hiểu là dải trị trung bình khoảng cách giữa hai đường vân song song và gần nhau. Đây là một thông tin làm tiền đề cho công
đoạn lọc minutiae về sau.
Ảnh nhị phân có các đường vân đã được làm mảnh đến 1 pixel tạo ra từ khâu làm mảnh đã có, tỏ ra rất thuận tiện với phương pháp scan trong việc ước lượng khoảng cách đường vân. Theo cách này, sẽ quét một số dòng và một số cột trên ảnh (thinned ridgemap), lưu lại vị trí điểm trên đường vân, sau đó tính giá trị trung bình khoảng cách điểm là được kết quả cần tìm.
4.1.5. Hiệu chỉnh đường vân và lọc minutiae sai
Phần này sẽ trình bày về vấn vân đề loại bỏ các minutiae sai. Những nhiễu này chủ yếu được tao ra từ quá trình làm mảnh đường vân, và cũng có những nhiễu từ
khâu thu nhận ảnh
Các công việc thực hiện: làm “trơn” đường vân, “nối” các đường vân bịđứt trong ngưỡng giới hạn, “tách” các đường vân bị dính, cuối cùng là tạo mã vân tay từ
minutiae.
4.1.5.1. Hiệu chỉnh đường vân và lọc minutiae 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.
a) c)
Hình-4. 8: Số minutiae phát hiện được a) ngay sau làm mảnh vân; b) sau lọc minutiae.
(vùng ảnh đánh dấu vuông và tròn thể hiện điển hình một số minutiae sai được loại bỏ)
Khi thực hiện hai nhiêm vụ này, thông tin cần cần biết trước là khoảng cách trung bình giữa các đường vân rd. Nó đã được ước lượng từ bước scanảnh vân tay làm mảnh trình bày ở trên. Sau đó, việc lọc minutiae sẽ căn cứ theo rd cộng thêm các điểm “nút” tìm thấy bằng thuật toán crossing number.
a)
b)
Hình-4. 9: Lọc các minutiae
Chương 4: Nhận dạng vân tay
4.1.5.2. Lọc minutiae sai cấp hai và tạo mã từ minutiae
Khi các đường vân đã làm “trơn”, các điểm minutiaeđược tìm kiếm một lần nữa và số lượng các điểm sai cũng đã được giảm đáng kể. Tuy nhiên còn hai lỗi mà quá trình trên chưa khắc phục được là “nối” các đường vân bịđứt (khoảng các giữa hai
đầu mút < rd) và “cắt” đoạn vân nối hai đường vân dạng cầu chữ H (khoảng cách cầu < rd).
Giải pháp thực khắc phục là so sánh khoảng cách định giữa hai điểm nút và góc
định hướng của chúng theo ngưỡng (∆ ∆d, θ) để loại bỏ. Trong luận văn chọn
[ 6, 6]
θ π π
∆ ∈ − , còn ∆ =d rd.
Hình-4. 10: Các minutiae được trích chọn cuối để tạo mã
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. Quá trình tạo mã từ
minutiae hoàn tất khâu trích chọn đặc tính đểđịnh danh.
4.2. Phân loại kiểu vân tay
Hệ thống nhận dạng identification, cơ sở dữ liệu có thể lên đến hàng triệu chỉ bản nên quá trình đối chiếu 1:N dĩ nhiên tốn rất nhiều thời gian. Phân loại vân tay nhằm mục đích tổ chức các template theo từng category (nhóm phân loại) để tiết kiệm thời gian nhận dạng (cho một input-image khi hệ thống hoạt động).
a) b) c)
d) e)
Hình-4. 11: Năm kiểu vân tay trong thực tế
a) arch ; b) whorl ; c) tented arch; d) left loop ; e) right loop.
Mặc dù luận văn giới hạn trong số lượng mẫu ít để thực hiện xử lý dữ liệu và thử
nghiệm. Nhưng hệ thống nhận dạng vân tay trong luận văn này được thiết kế theo kiểu identification (có khả năng đối chiếu 1:N). Tuân thủ kiểu nhận dạng của hệ
thống và hướng thiết kế mởđặt ra ban đầu thì phân loại vân tay là khâu không thể
bỏ qua. Giải pháp phân loại vân tay ởđây sử dụng cây quyết định (treefit), như vậy sẽ kế thừa được nhiều kết quả của phần trích chọn đặc tính vân tay cho đối chiếu ở
trên.
Quá trình phân loại vân tay được thực hiện qua ba khâu chính 1) trích chọn đặc tính định hướng cục bộ,
2) tạo vec-tơđặc tính, 3) bộ phân loại.
Các vân tay được phân loại vào năm category: A, L, R, T, W, tương ứng với arch, left loop, right loop, tented arch và whorl.
Chương 4: Nhận dạng vân tay
Hình-4. 12: Sơđồ khối mô tả thuật toán phân loại vân tay
4.2.1. Trích chọn đặc tính
Phân loại vân tay thì phụ thuộc nhiều vào các điểm kỳ dị (singular point), bao gồm điểm delta và điểm core. Khi đã có orientation image các điểm kỳ dị có thể
xác định thuân lợi bằng phương pháp Poincaré. Đặc tính cần trính chọn là góc định hướng cục bộ θi j, [2, 19].
a) b)
Hình-4. 13: Phương pháp chỉ số Poincaré a) trong miền liên tục; b) trong ảnh số
Chỉ số Poincaré của trường định hướng tại điểm ảnh [ ]i j, theo một đường bao kín tính như sau: ( ) ( ) 0 1 é , , 2 N k Poincar i j k π = = ∑∆
( ) ( ) ( ) ( ) ( ) ( ) ( ) , , 2 , , 2 , , 2 d k d k k d k d k d k d k π δ δ π π δ δ π π δ δ ⎧ < ⎪ ⎪ ⎪ ∆ =⎨ + ≥ ⎪ ⎪ − ≤ − ⎪⎩ ( ) ( i(( 1 mod) ), j(( 1 mod) )) ( i( ) ( ), j ). dδ k =DF L k+ L L k+ L −DF L k L k
Trong đó L là một đường bao kín lấy điểm [ ]i j, , Li và Lj tạo hệ trục tọa độ