Bài toán phân mảnh ảnh chỉbản vân tay tự động

Một phần của tài liệu Nghiên cứu xây dựng thuật toán phân mảnh chỉ bản mười ngón dựa trên kỹ thuật véctơ hóa ảnh đường nét và ứng dụng (Trang 33 - 38)

Bài toán đƣợc phát biểu nhƣ sau: Cho một chỉ bản vân tay 10 ngón nhƣ hình dƣới đây:

Hình 2.1: Mẫu chỉ bản vân tay 10 ngón

Hãy xây dựng thuật toán tự động định vị và tách từ chỉ bản vân tay 10 ngón thành 22 vùng riêng rẽ nhƣ sau: 2 vùng ảnh chứa mã vạch và phần đầu chỉ bản; 10 vùng ảnh cho 10 ngón lăn, 10 vùng cho 10 ngón ấn (gồm 2 vùng nhỏ cho 2 ngón cái phải, cái trái và 4 vùng lƣu 4 ngón chụm trái và 4 vùng cho 4 ngón chụm phải).

Bài toán phân mảnh ảnh chỉ bản 10 ngón hoàn toàn không đơn giản nhƣ chúng ta nghĩ. Trên thực tế có một số chỉ bản dùng giấy chất lƣợng quá thấp, cũ kỹ, thậm chí có những chỉ bản dùng giấy nền màu tím, màu xanh, trên đó còn nhiều vết nhiễu nhƣ: các số hiệu phân loại, vết mực bẩn, các vết linh tinh khác...

- 33 –

Hình 2.2: Mẫu chỉ bản vân tay 10 ngón chất lƣợng kém

Không những đối với chỉ bản giấy truyền thống, mà bài toán phân mảnh ngay cả với chỉ bản thu nhận bằng thiết bị vân tay sống cũng đang là một vấn đề thời sự mà thế giới đang quan tâm. Nội dung của những bài toán phân mảnh này nhằm tách phần 2 ngón cái và phần 4 ngón lăn đồng thời thành từng ngón riêng rẽ khi lập chỉ bản vân tay sống tại các trạm đăng ký, kiểm tra thị thực nhập cảnh.

Viện Tiêu chuẩn và Công nghệ Mỹ đã đƣa ra đặc tả kỹ thuật để tổ chức đánh giá các thuật toán phân mảnh nhƣ sau:

Đầu vào: ảnh nhiều (4) ngón, format: *.wsq hoặc uncompressed raw data (không có header). Độ phân giải cả chiều ngang và chiều dọc = 500 dpi. Kích thƣớc ảnh đầu vào tối đa: 83.8 mm x 76.2. Ngoại lệ có thể có một ít ảnh lên tới 4 inch (2000 pixels).Tên tệp dƣới dạng command lines: /share/data/slap999.wsq hay slap999.wsq.

Các tham số đầu vào:

+ Chỉ số bàn tay: R: tay phải; L: tay trái; U: không xác định.

+ Nguồn thu nhận: L: livescan, P: chỉ bản giấy; U: không xác định. + Đƣờng dẫn đầu ra: Thƣ mục đầu ra.

+ Tên tệp vân tay ấn (slap): có thể có thêm tham số chiều cao, chiều rộng ảnh. (nói chung là dƣới dạng tƣờng minh command lines).

Thí dụ minh họa:

Linux:

Segment –h ID –s Source [-o Dir] image.wsq Hoặc:

Segment –h ID –s Source [-o Dir] image.wsq HEIGHT WIDTH h ID: L, R ỏ U tay trái, tay phải hay không xác định tay nào; s SOURCE: L, P hoặc U;

0 DIR: thƣ mục đầu ra chứa kết quả phân mảnh (các files segmented); image.wsq: File ảnh với khuông dạng WSQ;

image.raw HEIGHT WIDTH

- 34 –

File ảnh kết quả phân mảnh: đƣợc lƣu ở khuôn dạng RAWDATA, grayscale 1 pixel 8 bit, độ phân giải giữ nguyên nhƣ ảnh đầu vào. BLACK: 0; WHITE: 255; dòng ảnh từ trái qua phải, từ trên xuống dƣới.

Tên file ảnh đầu ra:

Tên ảnh để ở thƣ mục hiện hành và nối theo 2 tham số: Vị trí mảnh: A, B, C, D, E

Vị trí ngón:

Số TT Nhãn

ngón Chú giải Số TT Nhãn Chú giải

00 U không xác định 06 LT cái trái 01 RT cái phải 07 LI trỏ trái 02 RI trỏ phải 08 LM giữa trái 03 RM giữa phải 09 LR nhẫn trái 04 RR nhẫn phải 10 LL út trái 05 RL út phải

Ví dụ tên tệp kết quả:

slap999_A_10.raw; slap999_B_09.raw; slap999_C_08.raw; slap999_A_00.raw. Kích thƣớc ảnh:

Chiều cao, chiều rộng thƣờng lớn hơn 1,5 inch (750 pixel).Tối đa 4 inch (2000) pixel vẫn chấp nhận.

File lƣu thông tin về các ảnh kết quả (meta information file).

Qui ƣớc đặt tên: lấy cùng tên file đầu ra, đổi đuôi file thành *. nsm. File txt này chứa các cặp giá trị thuộc tính, mỗi giá trị một dòng, tối thiểu phải có các cặp giá trị thuộc tính sau đây:

PIX_HEIGH = value PIX_WIDTH = value

Các giá trị thuộc tính không đòi hỏi nhƣng trên thực tế thƣờng là đầu ra của các thuật toán phân đoạn:

SEQ_QUAL = value: giá trị value là độ tốt của kết quả đối sánh, giá trị càng cao, kết quả càng tốt, giá trị nguyên hoặc thực trên một thang đo cụ thể do NCD xác định. ORIGINAL_ROTATION = value: độ đo góc quay của ảnh ngón bản gốc so với trục đứng, chiều dƣơng: thuận chiều kim đồng hồ, chiều âm ngƣợc lại, góc nguyên hoặc thực, đơn vị: độ.

OUTPUT_ROTATED = (TRUE or FALSE) : có quay so với bản đầu vào hay không. BOUNDINDBOX=(X,Y) topleft , (X,Y)topright, (X,Y)bottomleft, (X,Y)bottomright. Tọa độ pixel của 4 góc ảnh đƣợc cắt trên ảnh đầu vào.

Thí dụ:

PIX_HEIGHT = 200 PIX_WIDTH = 120

- 35 – SEG_QUAL = 0.82; ORIGINAL_ROTATION = -30 OUTPUT_ROTATED = FALSE BOUNDINGBOX = (100, 100), (400,100), (100,400),(400,400) Mã lỗi và hướng xử lý:

Mã lỗi lỗi Mã lỗi lỗi

0 thành công 11 chỉ 1 ngón đƣợc phân vùng 1 không đọc đƣợc file đầu vào 12 chỉ 2 ngón đƣợc phân vùng 2 không mở đƣợc hoặc không giải

nén đƣợc file WSQ đầu vào 13

chỉ 3 ngón đƣợc phân vùng

3 không ghi đƣợc file đầu ra

20 – 63 các lỗi ứng dụng nghiêm trọng (giải thích kỹ trong tài liệu)

10 ngón đƣợc phân vùng 64 – 127 các lỗi ứng dụng không nghiêm trọng và các nhắc nhở (giải thích kỹ trong tài liệu) So với bài toán phân mảnh chỉ bản vân tay sống trên đây, bài toán phân mảnh chỉ bản vân tay trên giấy phức tạp hơn nhiều. Do đó, nếu giải đƣợc vấn đề phân mảnh tự động ảnh vân tay trên giấy thì cũng sẽ giải quyết đƣợc vấn đề phân mảnh vân tay sống nói trên.

Hiện nay, đa số phần mềm quét nhập chỉ bản thƣờng hoạt động theo các bƣớc sau: 1- Quét chỉ bản vân tay 10 ngón, kết quả là một ảnh số 256 mức xám, độ phân giải 500 dpi.

2- Từ ảnh chỉ bản vân tay đó, nhân viên mã hóa thƣờng phải xử lý thủ công tách phần 10 dấu vân tay trên chỉ bản vân tay.

3- Riêng phần đọc mã vạch chứa số căn cƣớc đối tƣợng hiện nay vẫn còn đọc thủ công bằng máy đọc mã vạch, nếu muốn tự động hóa cũng cần phải phân mảnh.

- 36 –

Ảnh của mƣời ngón trên đƣợc chƣơng trình xử lý tách tự động thành 10 ảnh của từng ngón riêng biệt và lƣu trữ trên cơ sở dữ liệu. Nhƣng việc tách này vẫn đƣợc thực hiện bằng cách chia đều vùng 10 ngón trên thành 2 dòng và 5 cột. Kết quả là các ô hình chữ nhật trên chỉ bản đƣợc thể hiện sau khi cắt nhƣ sau:

Hầu hết các hệ thống nhận dạng vân tay tự động trên thế giới nhƣ AFIX TRACKER, MORPHO AFIS đều phân tách ảnh chỉ bản vân tay theo cách thức trên. Nhƣ ta thấy, cách cắt ảnh này vẫn còn nhiều hạn chế, nó để lại nhiều vùng dƣ thừa trên ảnh, trên đó thƣờng có nhiều vết bụi bẩn. Nếu đƣa ra đƣợc cách cắt ảnh hợp lý hơn, sẽ góp phần tiết kiệm đƣợc ít nhất 1/3 dung lƣợng lƣu trữ của mỗi ngón và loại bỏ đƣợc các vết bẩn trên vùng nền. Không những tiết kiệm đƣợc về dung lƣợng ảnh mà việc phân mảnh còn ảnh hƣởng trực tiếp đến chất lƣợng bộ điểm đặc trƣng trích chọn đƣợc.

(a) Bộ đặc điểm chất lƣợng kém (trƣờng hợp vùng nền có nhiều nhiễu tạp)

(b) Bộ đặc điểm chất lƣợng tốt (trƣờng hợp vùng nền không có nhiễu)

Do vậy, cần phải cải tiến công đoạn cắt ảnh này theo hƣớng ứng dụng các phƣơng pháp phân mảnh để tự động phân vùng và tách các ngón trên chỉ bản 10 ngón sao cho với mỗi ảnh của một ngón tay riêng rẽ đƣợc tách ra chỉ gồm vùng ảnh còn vùng nền sẽ bị loại bỏ.

- 37 –

(a)

(b)

Hình 2.3: (a) Ảnh vân tay ban đầu, (b) Kết quả phân mảnh: Vùng nền đã bị cắt xén bớt

Một phần của tài liệu Nghiên cứu xây dựng thuật toán phân mảnh chỉ bản mười ngón dựa trên kỹ thuật véctơ hóa ảnh đường nét và ứng dụng (Trang 33 - 38)

Tải bản đầy đủ (PDF)

(90 trang)