Nhận dạng vân tay ứng dụng quản lý an ninh cơ quan,luận văn thạc sĩ chuyên ngành kỹ thuật điện tử

125 2 0
Nhận dạng vân tay ứng dụng quản lý an ninh cơ quan,luận văn thạc sĩ  chuyên ngành kỹ thuật điện tử

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

Thông tin tài liệu

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC GIAO THÔNG VẬN TẢI -o0o - NGUYỄN MINH MẪN NHẬN DẠNG VÂN TAY ỨNG DỤNG QUẢN LÝ AN NINH CƠ QUAN LUẬN VĂN THẠC SĨ KỸ THUẬT TP.HCM THÁNG 12 NĂM 2011 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC GIAO THÔNG VẬN TẢI NGUYỄN MINH MẪN NHẬN DẠNG VÂN TAY ỨNG DỤNG QUẢN LÝ AN NINH CƠ QUAN Chuyên ngành: KỸ THUẬT ĐIỆN TỬ Mã số: 60.52.70 LUẬN VĂN THẠC SĨ KỸ THUẬT CÁN BỘ HƯỚNG DẪN: PGS TS LÊ HÙNG LÂN TP.HCM THÁNG 12 NĂM 2011 TRÍCH YẾU LUẬN VĂN CAO HỌC Họ tên học viên: Nguyễn Minh Mẫn Năm sinh: 1974 Cơ quan công tác: Công ty Intel Products Việt Nam,Khu cơng nghệ cao Sài Gịn,Q9,TP.HCM Khoá: 16 Chuyên ngành: Kỹ thuật điện tử Mã số: 60.52.70 Cán hướng dẫn: PGS.TS Lê Hùng Lân Bộ môn: Điều khiển học Tên đề tài luận văn: Nhận dạng vân tay ứng dụng quản lý an ninh quan Mục đích nghiên cứu đề tài: Nghiên cứu vân tay nhằm phục vụ điều tra tội phạm.Dấu vân tay ngón tay người cịn chứa đựng nhiều thơng tin bẩm sinh phẩm chất, tài năng, tính cách riêng người Vì ngun cứu vân tay cịn để đốn tính cách, dùng lĩnh vực nhân tướng học, đoán biết khả trội người để lựa chọn nội dung phương pháp giáo dục phù hợp, sở phát triển số IQ cao lựa chọn nghề nghiệp vững vàng cho tương lai, định hướng cho em học ? học nào? Mục đích đề tài nghiên cứu phương pháp nhận dạng vân tay để ứng dụng toán quản lý nhân đảm bảo an ninh quan Phương pháp nghiên cứu kết đạt (ghi tóm tắt kết luận luận văn): Dựa kết công bố tạp chí chuyên ngành quốc tế, tài liệu chuyên ngành, khuyến cáo, khuyến nghị nhà sản xuất thiết bị Với ảnh vân tay cần nhận dạng, nghiên cứu vấn đề lý thuyết nhận dạng vân tay mạng nơ ron,tìm hiểu nhu cầu thực tế toán an ninh quan.Trên sở xây dựng phần mềm cho hệ thống kiểm tra vân tay để đảm bảo an ninh cho quan Điểm bình qn mơn học: Điểm bảo vệ luận văn: Ngày tháng Học viên Xác nhận cán hướng dẫn: Xác nhận Bộ môn: năm CẢM TẠ Em xin chân thành cảm tạ:  Thầy PGS TS.Lê Hùng Lân trực tiếp hướng dẫn em thực đề tài Những nhận xét dẫn thường xuyên thầy nội dung đề tài em thật quí báu, em học thầy cách triển khai ý tưởng, cách trình bày cách phân chia công việc lớn cách hợp lý  Em xin cảm ơn q thầy, Khoa Điện-Điện Tử trường ĐH GTVT quí thầy, cô hướng dẫn, dạy dỗ em suốt trình học tập trường  Các bạn thân Hồng Thị Ngoan, Nguyễn anh Dũng, đặc biệt Đặng Xuân Ba trực tiếp hỗ trợ lập trình giúp đỡ nhiều thời gian thực thi Xin cảm ơn Ngày 01 tháng 12 năm 2011 Học viên thực Nguyễn Minh Mẫn Lớp Kỹ Thuật Điện Tử_Khóa 16 NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… Tp Hồ Chí Minh, ngày tháng năm 2011 NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… …………………………………………………………………………………………… Tp Hồ Chí Minh, ngày tháng năm 2011 MỤC LỤC Chương 1: TỔNG QUAN VỀ VÂN TAY VÀ HỆ THỐNG NHẬN DẠNG Trang 1.1 Sinh trắc học ………………………………………… ……………………… 1.2 Vân tay gì………………………………………… ……………………… 1.3 Đặc điểm dấu vân tay………………… …………………………… 1.4 Sự hình thành dấu vân tay………………… ………………………… 1.5 Mục đích nghiên cứu nhận dạng vân tay ………………………… 1.6 Lịch sử nghiên cứu ứng dụng nhận dạng vân tay………………… 1.7 Phân loại nhóm vân tay………………………… ……………………… 1.8 Cách lấy dấu vân tay………………………… …………………………… 1.9 Lĩnh vực ứng dụng nhận dạng vân tay ……………………………… 1.10 Quá trình nhận dạng vân tay…………… ……………………………… 1.11 Khảo sát Hệ thống AFIS …………… ………………………………… 1.12 Một số thiết bị ứng dụng công nghệ nhận dạng vân tay……………… Chương 2:LÝ THUYẾT VỀ XỬ LÝ ẢNH VÀ ỨNG DỤNG VÀO HỆ THỐNG NHẬN DẠNG 2.1 LÝ THUYẾT VỀ ẢNH SỐ …………… ………………………………… 12 2.1.1 Khái niệm…………… …………………………………………………… 12 2.1.2 Khái niệm phần tử ảnh …………………………………………………… 12 2.2 CÁC KHÁI NIỆM CƠ BẢN TRONG XỬ LÝ ẢNH SỐ 2.2.1 Mục đích việc xử lý ảnh số …………………………………………… 2.2.2 Kỹ thuật nâng cao chất lượng ảnh………………………………………… 2.2.3 Biến đổi lược đồ mức xám ( Histogram ) ……………………………… 2.2.4 Kỹ thuật lọc số – làm trơn nhiễu…………………………………………… 2.2.5 Kĩ thuật tăng độ sắc nét ảnh…………………………………………… 2.2.6 Phân vùng ảnh …… …………………………………………………… 2.2.7 Nhận dạng ảnh …… …………………………………………………… 12 13 13 14 16 17 17 Chương 3:XỬ LÝ ẢNH VÂN TAY 3.1 ẢNH VÂN TAY…… …………………………………………………………… 19 3.1.1 Gray-Scale…… …………………………………………………………… 19 3.1.2 Ảnh nhị phân…… ……………………………………………………… 19 3.1.3 Chuyển đổi ảnh xám sang ảnh nhị phân……………………………… 19 3.2 VÂN NỔI, VÂN CHÌM VÀ CÁC ĐIỂM ĐẶC TRƯNG TRÊN ẢNH VÂN TAY…… ………………………………………………………………… 19 3.2.1 Singularity…… ………………………………………………………… 20 3.2.2 Minutiae…… …………………………………………………………… 21 3.3 PHƯƠNG PHÁP TRÍCH CÁC ĐIỂM ĐẶC TRƯNG:…………… 21 3.3.1 Trích tìm điểm Singularity………………………………………… 21 3.3.2 Trích tìm điểm minutiae……………………………………………… 22 3.4 PHÂN LỚP ẢNH VÂN TAY……………………………………………………… 23 3.5 CÁC PHƯƠNG PHÁP NHẬN DẠNG TRUYỂN THỐNG…………… 27 Chương 4: CƠ SỞ LÝ THUYẾT VÀ ỨNG DỤNG CỦA MẠNG NEURAL 4.1 PHÂN LOẠI CẤU TRÚC MẠNG ……………………………………… ……… 29 4.1.1 Mạng có cấu trúc tiến …………………………………………………… 29 4.1.2 Mạng hồi quy (recurrent network) :……………………………… 30 4.2 CƠ SỞ LÝ THUYẾT VÀ GIẢI THUẬT HUẤN LUYỆN CHO MẠNG LAN TRUYỀN NGƯỢC 4.2.1 Cấu trúc mạng lan truyền ngược ……………………………… 31 4.2.2 Huấn luyện cho mạng lan truyền ngược …………………… 34 4.2.3 Vấn đề khớp lực mạng………………… 34 4.2.4 Hai phương pháp cải thiện tính tổng qt hóa …………… 36 Ứng dụng mạng Neural lĩnh vực nhận dạng ……… 38 4.2.5 Chương 5:MƠ HÌNH MARKOV VÀ ỨNG DỤNG VÀO HỆ THỐNG NHẬN DẠNG 5.1 VÀI NÉT VỀ A A MARKOV……………………………………………… 41 5.2 MƠ HÌNH MARKOV……………………………………………………………… 41 5.2.1 Giả thuyết Markov…………………………………………………………… 42 5.2.2 Quá trình Markov……………………………………………………………… 42 5.2.3 Các thành phần mơ hình Markov………………………… 42 5.2.4 Định nghĩa mơ hình Markov……………………………………………… 43 5.2.5 Nhược điểm mơ hình Markov……………………………………… 44 5.2.6 Chuỗi Markov……………………………………………………………… 45 5.2.7 Một số ứng dụng chuỗi Markov ……………………………………… 45 5.3 MƠ HÌNH MARKOV ẨN HMM…………………………………………… 5.3.1 Giới thiệu…………………………………………………………………… 46 46 5.3.2 Mơ hình Markov ẩn………………………………………………………… 47 5.3.3 Sự tiến hóa mơ hình HMM ……………………………………… 48 5.3.4 Sử dụng mơ hình HMM……………………………………………… 49 5.3.5 Các chuyển tiếp trạng thái mơ hình Markov ẩn ……… 49 5.3.6 Định nghĩa thành phần trạng hái hỗn hợp ………………………… 50 5.3.7 Ví dụ cụ thể HMM……………………………………………………… 51 Chương 6:HỆ THỐNG NHẬN DẠNG VÂN TAY_ỨNG DỤNG QUẢN LÝ AN NINH CƠ QUAN 6.1 GIỚI THIỆU Về ĐẦU ĐỌC VÂN TAY …………………………………… 64 6.2 DÙNG HMM CHO HỆ THỐNG NHẬN DẠNG VÂN TAY 65 6.3 LƯU ĐỒ NHẬN DẠNG VÂN TAY………………………………………… 66 6.4 RÚT TRÍCH ĐẶC TRƯNG…………………………………………………… 68 6.4.1 Trích Vector quan sát…………………………………………………… 6.4.2 Phân vùng ảnh……………………………………………………………… 6.5 HUẤN LUYỆN HMM……………………………………………………………… 68 69 70 6.6 NHẬN DẠNG…………………………………………………………………………… 73 6.7 CÁC KẾT QUẢ ĐẠT ĐƯỢC…………………………………………………… 75 6.8 CHƯƠNG TRÌNH ỨNG DỤNG……………………………………………… 76 6.8.1 Màn hình giao diện chương trình nhận dạng vân tay………… 6.8.2 Hướng dẫn sử dụng chương trình…………………………………… 76 76 Kết luận………………………………………………………………………………………… 78 Tài liệu tham khảo…………………………………………………………………………… 79 Phụ lục:Chương trình C++.……………………………………………………………… 80 CÁC KÝ HIỆU VIẾT TẮT Số thứ tự Ký hiệu viết tắt Từ đầy đủ Nghĩa IQ Intelligence Quotient Chỉ số thông minh AFIS Automatic FingerPrint Identification System Hệ thống nhận dạng vân tay tự động VGA Video Graphic Array Hiển thị đồ họa màu ánh xạ bit HMM Hidden Markov Model Mơ hình Markov ẩn BẢNG TĨM TỔNG KẾT CÁC HÌNH VẼ Hình Mơ tả 1.1 Vài hình ảnh sinh trắc học 1.2/1.3 Hình vân tay 1.4 Vân tay khảo cổ học 1.5/1.6 Phân loại nhóm vân tay 1.7 FootPrint Reader 1.8 Các trình AFIS 1.9 Bàn phím có chức nhận dạng vân tay 1.10 USB Flashdrive nhận dạng vân tay 1.11 Máy laptop có chức nhận dạng vân tay 2.1 Các histogram tương ứng với loại ảnh 3.1 Singular points 3.2 Trường định hướng (orientation field) 3.3 Tách điểm đặc trưng 3.4 Phân loại lớp vân 3.5/3.6 loại vân tay thực tế 3.7 MASDF 3.8 Các phép quay vector 3.9 Whorl,loop delta 4.1 Cấu trúc mạng Neural Networks tiến 4.2 Cấu tạo Neural 4.3 Hàm truyền logsig 4.4 Hàm truyền tansig 4.5 Hàm truyền pureline (tuyến tính) Luận án thạc sỹ kỹ thuật // 99 cvEstimateObsProb(info,hmmfolder); float result_likelihood_new=cvEViterbi(info,hmmfolder); if (likelihood_resultGetBookmark(varBookmark); m_pSet->MoveFirst(); while (!m_pSet->IsEOF() ^ lFound) if(m_pSet->m_Ho_va_Ten == S_name[ket_qua]) lFound=TRUE; else m_pSet->MoveNext(); if (!lFound) { MessageBox("record not found","database error",MB_OK |MB_ICONERROR); if (m_pSet->CanBookmark()) m_pSet->SetBookmark(varBookmark); Cán hướng dẫn: PGS TS Lê Hùng Lân HVTH: Nguyễn Minh Mẫn Luận án thạc sỹ kỹ thuật 102 else m_pSet->MoveFirst(); } m_outHovaten=m_pSet->m_Ho_va_Ten; m_outNgaysinh=m_pSet->m_Ngay_sinh; m_outNghenghiep=m_pSet->m_Nghe_nghiep; m_outQuequan=m_pSet->m_Que_quan; UpdateData(FALSE); /*==========================End liệu======================*/ } else { m_outHovaten=""; m_outNgaysinh=""; m_outNghenghiep=""; m_outQuequan=""; UpdateData(FALSE); Send_String('3'); MessageBox("Van tay cua nguoi la !!!"); } c=0; if (quansat) { SetTimer(2,500, NULL); quansat = false; }; } } else MessageBox("Ban phai chon Mode: nhan dang hoac huan luyen");} void CLUAN_VANView::OnXoaAnh() { // TODO: Add your control notification handler code here Invalidate(); } Cán hướng dẫn: PGS TS Lê Hùng Lân HVTH: Nguyễn Minh Mẫn Luận án thạc sỹ kỹ thuật 103 void CLUAN_VANView::OnOpenImage() { // TODO: Add your control notification handler code here Load_image(); m_inHovaten = ""; m_inNgaysinh =""; m_inNghenghiep = ""; m_inQuequan = ""; UpdateData(FALSE); c = 1; } void CLUAN_VANView::OnNhap() { // TODO: Add your control notification handler code here // Get a pointer to the record set CRecordset* pSet = OnGetRecordset(); // Get the ID for the new record long m_lnewID = m_pSet->GetMaxID()+ 1; // Add the new record m_pSet->AddNew(); // Set the ID in the new record m_pSet->m_ID = m_lnewID; // Save the new record UpdateData(TRUE); m_pSet->m_Ho_va_Ten= m_inHovaten; m_pSet->m_Ngay_sinh= m_inNgaysinh; m_pSet->m_Nghe_nghiep= m_inNghenghiep; m_pSet->m_Que_quan= m_inQuequan; m_pSet->Update(); // Refresh the record set m_pSet->Requery(); // Move to the new record m_pSet->MoveLast(); //Update the form index_image=0;//Số thứ tự ảnh mẫu folder while (!m_pSet->IsEOF()) { ten_nguoi=m_pSet->m_Ho_va_Ten; S_name[num_name]=ten_nguoi; num_name ++; Cán hướng dẫn: PGS TS Lê Hùng Lân HVTH: Nguyễn Minh Mẫn Luận án thạc sỹ kỹ thuật 104 m_pSet->MoveNext(); } MessageBox("Thong tin ca nhan da nhap xong "); } void CLUAN_VANView::OnTimer(UINT nIDEvent) { // TODO: Add your message handler code here and/or call default if (nIDEvent == 1) { image = cvQueryFrame(capture); CvSize size = cvGetSize(image); UpdateData(TRUE); cvSaveImage("image.bmp", image); cvSaveImage("image.bmp",image); CaptureDisplayOneFrame("image.bmp",1); }; if (nIDEvent == 2) { UpdateData(true); NhandangOnline_Temp(); UpdateData(false); }; CRecordView::OnTimer(nIDEvent); } void CLUAN_VANView::OnViewDatabase() { // TODO: Add your command handler code here Database m_dlg; if(m_dlg.DoModal()==IDOK){ } } void CLUAN_VANView::OnDatabase() { // TODO: Add your control notification handler code here Database m_dlg; if(m_dlg.DoModal()==IDOK){ } } void CLUAN_VANView::OnNhap1() Cán hướng dẫn: PGS TS Lê Hùng Lân HVTH: Nguyễn Minh Mẫn Luận án thạc sỹ kỹ thuật 105 { // TODO: Add your control notification handler code here // Get a pointer to the record set CRecordset* pSet1 = OnGetRecordset(); // Get the ID for the new record long m_lnewID = m_pSet->GetMaxID()+ 1; // m_pSet->RefreshRowset(); // Add the new record m_pSet->AddNew(); // Set the ID in the new record m_pSet->m_ID = m_lnewID; // Save the new record UpdateData(TRUE); m_pSet->m_Ho_va_Ten= m_inHovaten; m_pSet->m_Ngay_sinh= m_inNgaysinh; m_pSet->m_Nghe_nghiep= m_inNghenghiep; m_pSet->m_Que_quan= m_inQuequan; m_pSet->Update(); // Refresh the record set m_pSet->Requery(); // Move to the new record m_pSet->MoveLast(); //Update the form index_image=0;//Số thứ tự ảnh mẫu folder while (!m_pSet->IsEOF()) { ten_nguoi=m_pSet->m_Ho_va_Ten; S_name[num_name]=ten_nguoi; num_name ++; m_pSet->MoveNext(); } MessageBox("Thong tin ca nhan da nhap xong "); } void CLUAN_VANView::OnOkMode() { // TODO: Add your control notification handler code here UpdateData(TRUE); if (m_Hoc == TRUE ) Cán hướng dẫn: PGS TS Lê Hùng Lân HVTH: Nguyễn Minh Mẫn Luận án thạc sỹ kỹ thuật 106 { //m_Nhan_dang == FALSE; m_Button_nhan_dang.ShowWindow(FALSE); m_Lay_mau.ShowWindow(TRUE); m_Huan_luyen.ShowWindow(TRUE); m_hoc.ShowWindow(TRUE); m_nhap.ShowWindow(TRUE); UpdateData(FALSE); a=1; } else { m_Lay_mau.ShowWindow(FALSE); m_Huan_luyen.ShowWindow(FALSE); m_nhap.ShowWindow(FALSE); m_hoc.ShowWindow(FALSE); UpdateData(FALSE); }; if(m_Nhan_dang == TRUE) { //m_Hoc == FALSE; m_Lay_mau.ShowWindow (FALSE); m_Huan_luyen.ShowWindow(FALSE); m_hoc.ShowWindow(FALSE); m_Button_nhan_dang.ShowWindow(TRUE); UpdateData(FALSE); a=1; } else { m_Button_nhan_dang.ShowWindow(FALSE); } } void CLUAN_VANView::OnCheckNhanDang() { // TODO: Add your control notification handler code here } Cán hướng dẫn: PGS TS Lê Hùng Lân HVTH: Nguyễn Minh Mẫn Luận án thạc sỹ kỹ thuật 107 void CLUAN_VANView::OnBeforeDragOverLabel6(LPDISPATCH Cancel, LPDISPATCH Data, float X, float Y, long DragState, LPDISPATCH Effect, short Shift) { // TODO: Add your control notification handler code here } void CLUAN_VANView::OnBeforeDragOverLabel5(LPDISPATCH Cancel, LPDISPATCH Data, float X, float Y, long DragState, LPDISPATCH Effect, short Shift) { // TODO: Add your control notification handler code here } void CLUAN_VANView::OnBeforeDragOverLabel10(LPDISPATCH Cancel, LPDISPATCH Data, float X, float Y, long DragState, LPDISPATCH Effect, short Shift) { // TODO: Add your control notification handler code here } void CLUAN_VANView::OnBeforeDragOverLabel4(LPDISPATCH Cancel, LPDISPATCH Data, float X, float Y, long DragState, LPDISPATCH Effect, short Shift) { // TODO: Add your control notification handler code here } void CLUAN_VANView::OnBeforeDragOverLabel1(LPDISPATCH Cancel, LPDISPATCH Data, float X, float Y, long DragState, LPDISPATCH Effect, short Shift) { // TODO: Add your control notification handler code here } void CLUAN_VANView::OnBeforeDragOverLabel2(LPDISPATCH Cancel, LPDISPATCH Data, float X, float Y, long DragState, LPDISPATCH Effect, short Shift) { // TODO: Add your control notification handler code here } void CLUAN_VANView::OnCancelMode() Cán hướng dẫn: PGS TS Lê Hùng Lân HVTH: Nguyễn Minh Mẫn Luận án thạc sỹ kỹ thuật 108 { CRecordView::OnCancelMode(); // TODO: Add your message handler code here } void CLUAN_VANView::OnOnline() { // TODO: Add your control notification handler code here if (!online) { SetDlgItemText(IDC_ONLINE, "OFFLINE"); //đổi chữ Online thành Offline m_Button_nhan_dang_online.ShowWindow(TRUE); m_Button_lay_mau_online.ShowWindow(TRUE); m_Button_mo_file_hinh.ShowWindow(FALSE); online = true; ketthuc_online = false; CString folderRoot = "C:/Temp_process/"; CString executeFile = folderRoot + "GrFingerXSampleVB6.exe"; ShellExecute(NULL, "open", executeFile, NULL,NULL,SW_SHOWDEFAULT); } else { SetDlgItemText(IDC_ONLINE, "ONLINE"); m_Button_nhan_dang_online.ShowWindow(FALSE); m_Button_lay_mau_online.ShowWindow(FALSE); m_Button_mo_file_hinh.ShowWindow(TRUE); online = FALSE; } } void CLUAN_VANView::OnLayMauOnline() { // TODO: Add your control notification handler code here CString folderRoot = "C:/Temp_process/"; CFileStatus status; CString sFile(folderRoot + "ba1.txt"); // ba1 CString msg; CStdioFile file; CString sRecord; Cán hướng dẫn: PGS TS Lê Hùng Lân HVTH: Nguyễn Minh Mẫn Luận án thạc sỹ kỹ thuật 109 { if(!CFile ::GetStatus(sFile, status)) { msg.Format("%s doesn't exist", sFile); AfxMessageBox(msg); } else { if (!file.Open(sFile,0, NULL)) { msg.Format("%s : FAILT TO OPEN", sFile); AfxMessageBox(msg); } else { file.ReadString(sRecord); file.Close(); } } } while (sRecord != "0"); Load_image_online(); m_inHovaten = ""; m_inNgaysinh =""; m_inNghenghiep = ""; m_inQuequan = ""; UpdateData(FALSE); GetDlgItem(IDC_HUAN_LUYEN)->EnableWindow(false); c = 1; } void CLUAN_VANView::Load_image_online() { CString folderRoot = "C:/Temp_process/"; CString defaultPath = folderRoot + "default.bmp"; UpdateData(true); image = cvLoadImage(defaultPath); OnSet(); fingerprint_rect.x=fingerprint_rect.y=0; fingerprint_rect.width=size.width; fingerprint_rect.height=size.height; Cán hướng dẫn: PGS TS Lê Hùng Lân HVTH: Nguyễn Minh Mẫn Luận án thạc sỹ kỹ thuật 110 CaptureDisplayOneFrame(defaultPath,3); UpdateData(FALSE); } void CLUAN_VANView::OnNhanDangOnline() { // TODO: Add your control notification handler code here if (!ketthuc_online) { CString folderRoot = "C:/Temp_process/"; CFileStatus status; CString statusFile(folderRoot + "ba2.txt");//ba2 CString msg; CStdioFile file; if(!CFile ::GetStatus(statusFile, status)) { msg.Format("%s doesn't exist", statusFile); AfxMessageBox(msg); } else { if (!file.Open(statusFile,0, NULL)) { msg.Format("%s : FAILT TO OPEN", statusFile); AfxMessageBox(msg); } else { file.ReadString(quansat_status); file.Close(); } } SetDlgItemText(IDC_NHAN_DANG_ONLINE, "STOP");//đổi "nhan dang online" thành chữ STOP SetTimer(2, 500, NULL); m_Button_lay_mau_online.ShowWindow(FALSE); Cán hướng dẫn: PGS TS Lê Hùng Lân HVTH: Nguyễn Minh Mẫn Luận án thạc sỹ kỹ thuật 111 m_Button_mo_file_hinh.ShowWindow(FALSE); m_Check_hoc.ShowWindow(FALSE); m_Check_nhan_dang.ShowWindow(FALSE); m_Button_OK_mode.ShowWindow(FALSE); m_Button_nhan_dang.ShowWindow(FALSE); m_Lay_mau.ShowWindow (FALSE); m_Huan_luyen.ShowWindow(FALSE); m_hoc.ShowWindow(FALSE); m_nhap.ShowWindow(FALSE); m_chon_mode.ShowWindow(FALSE); m_Button_online_mode.ShowWindow(FALSE); ketthuc_online = true; a=1; } else { /* */ SetDlgItemText(IDC_NHAN_DANG_ONLINE, "Nhan dang Online");//đổi chữ STOP thành "nhan dang online" KillTimer(2); m_Button_lay_mau_online.ShowWindow(TRUE); m_Button_mo_file_hinh.ShowWindow(TRUE); m_Check_hoc.ShowWindow(TRUE); m_Check_nhan_dang.ShowWindow(TRUE); m_Button_OK_mode.ShowWindow(TRUE); m_Button_nhan_dang.ShowWindow(TRUE); //m_Lay_mau.ShowWindow (TRUE); //m_Huan_luyen.ShowWindow(TRUE); m_nhap.ShowWindow(TRUE); //m_hoc.ShowWindow(TRUE); m_chon_mode.ShowWindow(TRUE); m_Button_online_mode.ShowWindow(TRUE); ketthuc_online = false; a = 0; //moi them vao CString folderRoot = "C:/Temp_process/"; CString executeFile = folderRoot + "GrFingerXSampleVB6.exe"; ShellExecute(NULL, "close", executeFile, NULL,NULL,SW_SHOWDEFAULT); //hết thêm Cán hướng dẫn: PGS TS Lê Hùng Lân HVTH: Nguyễn Minh Mẫn Luận án thạc sỹ kỹ thuật 112 } } void CLUAN_VANView::NhandangOnline_Temp() { CString folderRoot = "C:/Temp_process/"; CFileStatus status; CString sFile(folderRoot + "ba1.txt");//ba1 CString statusFile(folderRoot + "ba2.txt");//ba2 CString msg; CStdioFile file; CString sRecord; { if(!CFile ::GetStatus(sFile, status)) { msg.Format("%s doesn't exist", sFile); AfxMessageBox(msg); } else { if (!file.Open(sFile,0, NULL)) { msg.Format("%s : FAILT TO OPEN", sFile); sRecord = "1"; // AfxMessageBox(msg); } else { file.ReadString(sRecord); file.Close(); } } } while (sRecord != "0"); sRecord = ""; if(!CFile ::GetStatus(statusFile, status)) { msg.Format("%s doesn't exist", statusFile); AfxMessageBox(msg); Cán hướng dẫn: PGS TS Lê Hùng Lân HVTH: Nguyễn Minh Mẫn Luận án thạc sỹ kỹ thuật 113 } else { if (!file.Open(statusFile,0, NULL)) { msg.Format("%s : FAILT TO OPEN", statusFile); AfxMessageBox(msg); } else { file.ReadString(sRecord); file.Close(); } } if (sRecord != quansat_status) { quansat_status = sRecord; OnXoaAnh(); Load_image_online(); m_inHovaten = ""; m_inNgaysinh =""; m_inNghenghiep = ""; m_inQuequan = ""; UpdateData(FALSE); GetDlgItem(IDC_HUAN_LUYEN)->EnableWindow(false); c = 1; KillTimer(2); quansat = true; OnNhanDang(); }; } Cán hướng dẫn: PGS TS Lê Hùng Lân HVTH: Nguyễn Minh Mẫn

Ngày đăng: 31/05/2023, 10:22

Tài liệu cùng người dùng

  • Đang cập nhật ...

Tài liệu liên quan