Công nghệ xử lý và nhận dạng ảnh mặt người bằng mạng nơron nhân tạo MLP

74 12 0
Công nghệ xử lý và nhận dạng ảnh mặt người bằng mạng nơron nhân tạo MLP

Đ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 đào tạo Trường đại học bách khoa hà nội luận văn thạc sĩ khoa học công nghệ xử lí nhận dạng ảnh mặt người mạng nơron nhân tạo MLP ngành: kỹ thuật điện tử m· sè: vị hång vinh Ng­êi h­íng dÉn khoa häc: GS.TS Nguyễn Quốc Trung Hà nội 2005 Lời cam đoan Tôi xin cam đoan nội dung luận văn công sức nghiên cứu, kết làm việc cá nhân Nếu phát chép, gian lận, man trá xin chịu hoàn toàn trách nhiệm Hà nội, tháng 11 năm 2005 Người viết luận văn Vũ Hồng Vinh Lời cảm ơn Tôi xin chân thành gửi lời cám ơn tới toàn thể thầy cô giáo bạn bè đồng nghiệp ®· tham gia ®ãng gãp ý kiÕn, chia sỴ kinh nghiệm động viên khuyến khích để luận văn hoàn thành tiến độ, đạt chất lượng tốt Đặc biệt, xin vô cảm ơn hướng dẫn bảo tận tình Phó giáo sư, Tiến sỹ Nguyễn Quốc Trung trường Đại học Bách khoa Hà nội đà thật hỗ trợ nhiều trình nghiên cứu Một lần cho phép bày tỏ lòng biết ơn vô hạn tới giúp đỡ quí báu tất thầy cô giáo, đồng nghiệp bạn bè đà giúp nghiên cứu thành công luận văn -5- mở đầu Một câu hỏi đặt ta nhìn thấy ảnh đối tượng ta lại phân biệt đối tượng người hay vật xác định ? Đó nÃo người đà học ghi nhớ hình ảnh đó, gặp lại hình ảnh này, nÃo có định nhận dạng xác Cơ chế nhận dạng ảnh nÃo người dựa chế học nơron thần kinh Hiện nay, nhà khoa học cố gắng thể chế nhận dạng qua kỹ thuật tính toán thông minh - kỹ thuật nhận dạng ảnh mạng nơron nhân tạo Mạng nơron nhân tạo có nhiệm vụ xử lí thông số ảnh đưa kết phân lớp ảnh đối tượng thuộc lớp ứng dụng mạng nơron nhân tạo thấy rÊt nhiỊu qu©n sù, d©n sù, y häc … nhận dạng ảnh vân tay ứng dụng dân quân sự, nhận dạng chữ viết hƯ thèng kiĨm tra sè s¶n phÈm, hƯ thèng tù động phân loại thư tín, tự động nhận biết đường đi, nhận dạng phận thể người ứng dụng giải phẫu học Nhận dạng đối tượng ảnh hướng nghiên cứu cần thiết bèi c¶nh nỊn kinh tÕ më cđa n­íc ta Dựa định hướng vấn đề GS TS Nguyễn Quốc Trung vạch ra, với cố gắng thân, đà hoàn thành luận văn với đề tài: công nghệ xử lí nhận dạng ảnh mặt người mạng nơron nhân tạo MLP Mục đích đề tài: Trình bày nghiên cứu lý thuyết phục vụ cho chủ đề Mạng nơron nhân tạo nhận dạng ảnh , đồng thời xây dựng modul phần mềm mạng -6- nơron thử nghiệm để nhận dạng ảnh mặt người với mục đích hiểu sâu cách thức mà mạng nơron tiến hành phân loại ảnh đối tượng nắm bắt kiến thức môn khoa học - nhận dạng đối tượng ảnh Nội dung nghiên cứu: ã Về lý thuyết: Cơ sở lý thuyết mạng nơron, cấu trúc mạng nơron, phân loại mạng nơron, mạng nơron ứng dụng nhận dạng ảnh Đi sâu vào cấu trúc, thuật toán, chế học, thủ tục học mạng nơron nhiều lớp Perceptron MLP học theo giải thuật lan truyền ngược sai số back-propagation làm tiền đề cho việc xây dựng mạng nơron nhận dạng đối tượng ảnh mặt người ã ứng dụng: Phân tích, thiết kế xây dựng modul phần mềm thử nghiệm nhận dạng đối tượng ảnh mặt người Kết quả: - Đà nắm bắt kiến thức chủ yếu mạng nơron giải thuật học mạng nơron nhiều lớp MLP - Đà xây dựng modul phần mềm mạng nơron thử nghiệm nhận dạng ảnh mặt người đạt số kết khả quan Do thời gian nghiên cứu hạn chế nên luận văn không tránh khỏi thiếu sót Tôi mong nhận lời góp ý thiếu sót luận văn để bổ xung nghiên cứu -7- chương Lý thuyết chung mạng nơron nhân tạo 1.1 Lý thuyết mạng nơron 1.1.1 Giới thiệu mạng n¬ron Chóng ta cịng biÕt r»ng tri thøc cđa loài người phong phú, sâu rộng đa dạng Nó bao gồm hiểu biết từ giới vi mô nguyên tử, điện tử, hạt nhân, hạt đến hiểu biết vĩ mô trái đất, hệ mặt trời, hệ thiên hà Thế có điều mà nghịch lý chóng ta biÕt “rÊt Ýt” vỊ chÝnh bé n·o bé Mạng nơron nhân tạo - thuật ngữ nói đến ngành kỹ thuật mà đòi hỏi kiến thức từ nhiều ngành khoa học khác nh­ to¸n häc, vËt lý häc, hãa häc, sinh vËt học tâm lý học, thần kinh học tất nhằm tạo máy tính hoạt động giống nÃo người 1.1.1.1 Tổ chức hoạt động n·o ng­êi: a) Tỉ chøc: Bé n·o cđa người hình thành từ liên kết khoảng 1011 phần tử (tế bào), có khoảng 1010 phần tử nơron, số lại khoảng 9*1010 phần tử tế bào thần kinh đệm chúng có nhiệm vụ phục vụ hỗ trợ cho nơron Thông thường nÃo trung bình cân nặng khoảng pound tích 90 inches3 Cấu tạo nÃo phân chia thành nhiều vùng khác Mỗi vùng kiểm soát hay nhiều hoạt động người Bộ nÃo có cấu trúc nhiều lớp, lớp bên thường thấy nếp nhăn, lớp có cấu tạo phức tạp Đây nơi kiểm soát phát sinh hành động phức tạp nghe, nhìn, tư -8- b) Hoạt động: Cho đến nay, có hiểu biết hoạt động cấp thấp nÃo Cụ thể: Mặc dù nơron ( xem phần tử xử lí hay phần tử tính ) có tốc độ chậm so với tốc độ cổng logic silicon vi chip -10-3 giây với 10-10 giây, nơron liên kết với khoảng 104 nơron khác, hoạt động nÃo hoạt động cách tổng lực đạt hiệu cao Nói cách khác phần tử nÃo hoạt động cách song song tương tác tinh vi phức tạp, hiệu hoạt động thường cao vấn đề phức tạp Hoạt động hệ thống thần kinh bao gồm nÃo giác quan sau: ã Trước hết người bị kích thích giác quan từ bên thể Sự kích thích biến thành xung điện giác quan tiếp nhận kích thích Những tín hiệu chuyển trung ương thần kinh nÃo để xử lí Những mệnh lệnh cần thiết phát sinh gửi đến phận thi hành thích hợp tay, chân ã Những phận thi hành biến xung điện thành liệu xuất hƯ thèng Tãm l¹i bé n·o cã cÊu t¹o rÊt phức tạp, tinh vi tạo thành từ mạng nơron có hàng chục tỉ tế bào với mức độ liên kết nơron cao hoạt động dựa chế hoạt động song song nơron tạo nên Các kích thích Các tiếp nhận Mạng lưới thần kinh Các tác động Các đáp ứng Hình 1.1 Biểu diễn sơ đồ khối hệ thống thần kinh -9- 1.1.1.2 Mô hình nơron sinh học Nơron phần tử tạo nên nÃo Cấu tạo hoạt động sau a) Cấu tạo: Một nơron điển hình có phần chính: - Phần thứ nhất: Thân phần tử hay soma (cell body or soma) Nhân nơron đặt - Phần thứ hai: Các dendrite Đây mạng dạng dây thần kinh để nối soma với - Phần thứ ba: axon Đây nối kết, hình trụ dài mang tín hiệu từ Phần cuối axon chia thành nhiều nhánh nhỏ Mỗi nhánh nhỏ (cả dendrite axon) kết thúc quan nhỏ hình củ hành gọi synapte mà nơron đưa tín hiệu vào nơron khác Những điểm tiếp nhận với synapte nơron khác dendrite hay chÝnh soma Synapse Nucleus Axon Dendrites H×nh 1.2: Sơ đồ nơron sinh học - 10 - b) Hoạt động: Các tín hiệu đưa synapte nhận dendrite kích thích ®iƯn tư ViƯc trun tÝn hiƯu nh­ trªn liªn quan đến trình hóa học phức tạp mà chất truyền đặc trưng giải phóng từ phía gửi nơi tiếp nối Điều làm tăng hay giảm điện bên thân nơron nhận Nơron nhận tín hiệu kích hoạt (fire) điện vượt khỏi ngưỡng xung (hoặc điện hoạt động) với độ mạnh (cường độ) thời gian tồn cố định gửi thông qua axon tới phần nhánh tới chỗ nối synapte với nơron khác Sau fering, nơron chờ khoảng thời gian gọi chu kỳ refractory, trước fire lại Synapses excitatory chúng cho phép kích thích truyền qua gây tình trạng fire nơron nhận Ngược lại, chúng inhibitory chúng cho phép kích thích truyền qua làm ngăn chở trạng thái fire nơron nhận 1.1.1.3 Mô hình nơron nhân tạo Để mô tế bào thần kinh khớp nối thần kinh nÃo người, mạng nơron nhân tạo có thành phần có vai trò tương tự nơron nhân tạo kết nối synapse Một nơron nhân tạo đơn vị tính toán hay đơn vị xử lý thông tin sở cho hoạt động mạng nơron Sơ đồ hình 1.2 mô hình nơron nhân tạo đây, xác định ba thành phần mô hình nơron: Một tập hợp synapse hay kết nối, mà chúng đặc trưng trọng số riêng Tức tín hiệu xj đầu vào synapse j nối với nơron k nhân với trọng số synapse wkj - 11 - k số nơron đầu synapse xét, j điểm đầu vào synapse Các trọng số synapse nơron nhân tạo nhận giá trị âm giá trị dương Một tổ hợp để tính tổng tín hiệu đầu vào nơron, đà nhân với trọng số synapse tương ứng; phép toán mô tả tạo nên tổ hợp tuyến tính Một hàm kích hoạt (activation function) để giới hạn biên độ đầu nơron Hàm kích hoạt xem xét hàm nén; nén (giới hạn) phạm vi biên độ cho phép tín hiệu đầu khoảng giá trị hữu hạn Mô hình nơron hình 1.3 bao gồm hệ số hiệu chỉnh tác động từ bên bk Hệ số hiệu chỉnh bk có tác dụng tăng lên giảm đầu vào thực hàm kích hoạt, tuỳ theo dương hay âm Các tín hiệu đầu vào x1 wk1 x2 wk1 xm wk1 HÖ sè hiệu chỉnh bk Hàm kích hoạt vk (.) Bộ tổ hợp tuyến tính Các trọng số synpase Hình 1.3 Mô hình nơron nhân tạo Đầu yk - 61 - 3.3.5 Cấu trúc liệu khai báo Cấu trúc mạng nơron xác định là: + Ba số nguyên xác định: - Số biến tín hiệu đầu vào m - Số biến tín hiệu n - Số nơron lớp ẩn A + Các trọng số nơron mạng nơron lưu trữ bảng tuyến tính cấp phát động W() Việc tính địa cho trọng số bảng tuyến tính thực hàm phụ trợ wInd( i, j, l ) Bảng trọng số cấp phát bảng toàn cục Hàm tính địa trọng số khai b¸o nh­ sau: Function wInd(i As Integer, j As Integer, lCurrent As Integer) As Integer + Cần mảng toàn cục để chứa toàn số liệu vào mẫu cho việc học mạng nơron Các số liệu lấy từ phần xử lí ảnh sang + Ngoài cần bảng toàn cục OutNR() để lưu trữ tín hiệu nơron + Như khai báo biến cần thiết cho mạng nơron : Public W() as Single, Out() as Single Public VectorInputForNN() As Single Private m as Integer, n as Integer, A as long - 62 - 3.3.6 Tổ chức chương trình modul chức Phần 1: khai báo biến khởi tạo giá trị cho tham số Phần 2: modul xây dựng cấu trúc mạng nơron tầng mạng - tín hiệu vào mẫu học ®äc tõ tÖp : X[]=X[0], X[1], X[2], …X[15] - tÝn hiệu tương ứng: y[]=y[0] Phần 3: modul học với giải thuật lan truyền ngược lỗi backpropagation + lan truyền tín hiệu vào qua mạng + lan truyền ngược sai sè tõ líp ®Õn líp Èn KÕt thóc đạt điều kiện dừng học Phần 4: - W[] chuẩn - đưa kết mẫu kiểm tra Phần 5: Nhận phân loại mẫu ảnh + Nếu nhận mặt người : faceValue=1; + Nếu nhận mặt người : faceValue=0; - 63 - Begin Khëi t¹o: η , Em, W []­, k , {Xk,dk} k=1  q  Outi= sigmoir  ∑ ¦ Wij* Netj   j  n E= ∑ (Outi − yi )2 + E i =1 δ i = (Out i − y i )a( Net i ) ∆Wij = η.δ i y ỵ ; i = a ( Net i )∑ W ji δ i ; j Wijnew = Wijold + Wij tăng mẫu học k++ E=0; k=1 E1 Sai Hình 3.9 : Lưu đồ thuật to¸n häc - 65 - Modul : hn lun Chức : - Tập trọng số W - Lan trun sai sè tõ líp tíi líp Èn - Hiệu chỉnh trọng số + Vào : - Các tín hiệu nơron có mạng - Sai sè ë líp + Ra : - TËp träng sè W sau hiƯu chØnh  Gi¶i thuật : - Bắt đầu từ lớp ( l = 2) cho tíi líp Èn (l = 1) tÝnh : + HƯ sè hiƯu chØnh δ lj + L­ỵng hiÖu chØnh ∆w lji = ηδ lj Outil −1 + HiƯu chØnh c¸c träng sè w lji = w lji + ∆w lji Hµm tÝnh chØ sè W – wInd() : Chức : - Tính địa trọng số thứ i nơron thứ j líp thø l b¶ng tun tÝnh träng sè W() + Vào : Ba số nguyên i, j, l + Ra : ChØ sè k - 66 -  Gi¶i thuËt Function wInd(i As Integer, j As Integer, lCurrent As Integer) As Integer If lCurrent = Then wInd = m * j + i - Else wInd = (m * A) + (j - A) * A + i - End If End Function 3.3.7 ThiÕt lËp chương trình Chương trình viết ngôn ngữ Visual Basic Giao diện chương trình gồm có module sau: Xử lí ảnh Huấn luyện_Nhận dạng Nhận dạng Hình 3.10 : Giao diện chương trình - 67 - Chương chình có chức sau: - Tiền xử lí ảnh - Tiến hành trình huấn luyện mạng (học), sau lưu lại trọng số tốt vào file (*.wei) - Chức xem kết mẫu học - Nhận dạng: tiến hành nhận dạng sau mạng đà huấn luyện Hình 3.11: Giao diện modul huấn luyện mạng nhận dạng Sau xử lí nhận dạng, file ảnh đầu vào chương trình tiến hành xử lí, tìm CSDL ảnh gốc đà huấn luyện giá trị đầu mạng gần hiển thị ảnh, kết sau: - 68 - Hình 3.12 : Giao diện modul nhận dạng ảnh sau huấn luyện nhận kết Sau xử lí nhận dạng, file ảnh đầu vào sai hiển thị cho kết dạng phủ định sau: Hình 3.13 : Giao diện modul nhận dạng ảnh sau huấn luyện nhận kết sai - 69 - Nhận dạng qua tập trọng số có sẵn Để nhận dạng tập trọng số mẫu đà huấn luyện, chức kích hoạt Việc nhận dạng ảnh từ mẫu chương trình tiến hành nhận dạng xác sở liệu CSDL ảnh đà học Màn hình huấn luyện nhận dạng sau: Hình 3.14 : Giao diện nhận dạng ảnh qua tập trọng số có sẵn Sau xử lí nhận dạng, file ảnh đầu vào hiển thị cho kết sau: - 70 - H×nh 3.15 : Giao diƯn nhËn dạng ảnh qua tập trọng số có sẵn nhận kết Sau xử lí nhận dạng, file ảnh đầu vào sai hiển thị cho kết dạng phủ định sau: Hình 3.16 : Giao diện nhận dạng ảnh qua tập trọng số có sẵn nhận kết sai - 71 - 3.3.8 Kết thử nghiệm Để kiểm nghiệm kết giải thuật, đà lấy 20 mẫu học, 15 mẫu mặt người mẫu phủ định mặt người Sau học, mạng tiến hành kiểm nghiệm 100 mẫu gồm 50 mẫu mặt người 50 mẫu phủ định Kết nhận d¹ng nh­ sau: Líp nhËn d¹ng Sè mÉu häc B Sè mÉu kiĨm Sè mÉu nhËn tra kÕt qu¶ dạng đúng(%) Mặt người 20 50 48 (96%) Mẫu phủ ®Þnh 20 50 44 (94%) Tỉng sè 40 100 95 (95%) Nhận xét đánh giá + Đối với mẫu mà mạng nơron đà học: nhận phân loại 100% + Đối với mẫu kiểm tra thêm: 20 mẫu lớp mặt người nhận dạng đạt 18 mẫu, 20 mẫu phủ định nhận dạng đạt 17 mẫu, nhiên kết hoàn toàn tăng lên tham số đầu vào cho mạng nơron chuẩn hoá tốt Ví dụ tăng số lượng phân vùng ảnh lên 36(6x6) vùng, 64(8x8) vùng + Tốc độ nhận dạng: Yêu cầu toán chưa đánh giá tốc độ nhận dạng số trường hợp có yêu cầu thời gian xử lí cần cải tiến số giải thuật phần mềm tối ưu - 72 - ã Ưu điểm phương pháp: + Nhận phân loại đối tượng nhiều trạng thái mà đối tượng tư khác + Tốc độ xử lí nhanh ã Nhược điểm phương pháp: + Quá trình xử lí toán liên quan chặt chẽ với kích thước ảnh đối tượng , điều có nghĩa độ thu/phóng đối tượng có ảnh hưởng đến kết toán Trong tËp mÉu kiÓm tra, nÕu mét mÉu cã chøa đối tượng ảnh bị nhiễu loạn lớn, độ mờ đối tượng cao làm nhận dạng sai - 73 - Kết luận + Mạng nơron đà xây dựng thử nghiệm qua toán nhận dạng phân loại ảnh đối tượng mặt người đạt kết khả quan số vấn đề cần giải sau: trình giải toán, thông số đầu vào mạng lấy trung bình mức xám ảnh nên việc xử lí ảnh để lấy thông số có xác hay không ảnh hưởng lớn đến kết toán Modul mạng nơron đà xây dùng nh­ng míi kiĨm nghiƯm víi sè l­ỵng mÉu nhá + Bài toán nhận dạng đối tượng mặt người toán có độ nhiễu ảnh cao, độ thu nhận đối tượng không ổn định ảnh hưởng lớn đến khả học mạng kết toán + Mạng nơron toán cấu trúc mạng MLP lớp theo phương pháp học có giám sát Trong việc ứng dụng mạng nơron cấu trúc mạng khác mạng nhiều líp Èn (5-7 líp Èn), m¹ng håi quy, m¹ng tù tổ chức với trình học không giám sát Kohonen ứng dụng rộng có đặc điểm chịu độ nhiễu ảnh lớn, ảnh hưởng độ thu phóng cần nghiên cứu, xây dựng kiểm nghiệm để đạt kết cao + HiƯn vỊ nhËn d¹ng cã nhiỊu h­íng nh­ dïng phương pháp nhận biết dạng điểm , vector hoá (xương hoá), dùng chuỗi điểm Markov, mạng nơron học không giám sátVì tác giả mong đòng góp ý kiến giúp đỡ để đề tài phát triển tốt - 74 - Hướng phát triển tiếp theo: Bài toán cần phát triển theo hướng sau: Tiếp tục tìm hiểu biện pháp nâng cao chất lượng đầu vào cho mạng nơron như: đặc trưng đối tượng: đặc trưng hình học, đặc trưng phổ từ nâng cao độ xác nhận dạng Tiếp tục xây dựng mạng nơron MLP nhiều lớp ẩn mạng nơron tự tổ chức để đối sánh kết đồng thời ứng dụng toán nhận dạng khác - 75 - tài liệu tham khảo Tiếng Việt Nguyễn Thanh Thuỷ, Trần Ngọc Hà, Mạng nơron nhiều lớp lan truyền ngược dùng cho việc mô hình hoá, Tạp chí tin học điều khiển học T.14.S.1.(1998) Tiếng Anh B Baldi and K Hornik Neural networks and principal component analysis: Learn-ing from examples without local minima Neural Networks, 1989 C.T Lin, C.S.G Lee, Neurofuzzy, 1993 C M Bishop Neural Networks for Pattern Recognition Clarendon-Press, Oxford,1995 David E Goldberg, Genetic Algorithms in Search, Optimization, and Machine Learing, 1989 K I Diamantaras and S Y Kung Principal component neural networks: Theory and applications Adaptive and Learning Systems for Signal Processing, Commu-nications, and Control Wiley, New York, 1996 L R Medsker, Hybrid Intelligent Systems, 1995 M Asif and T.-S Choi Shape From Focus Using Multilayer Feedforward Neural Networks 1970 R E Bellman Adaptive Control Processes: A Guided Tour Princeton University Press, Princeton, New Jersey, U.S.A., 1961 ... nơron nhân tạo Mạng nơron nhân tạo có nhiệm vụ xử lí thông số ảnh đưa kết phân lớp ảnh đối tượng thuộc lớp ứng dụng mạng nơron nhân tạo có thĨ thÊy rÊt nhiỊu qu©n sù, d©n sù, y học nhận dạng ảnh. .. tạo MLP Mục đích đề tài: Trình bày nghiên cứu lý thuyết phục vụ cho chủ đề Mạng nơron nhân tạo nhận dạng ảnh , đồng thời xây dựng modul phần mềm mạng -6- nơron thử nghiệm để nhận dạng ảnh mặt người. .. đổi mạng nơron MLP - 52 - chương thiết kế cài đặt phần mềm xử lí Nhận dạng ảnh mặt người 3.1 đặt vấn đề Bài toán ứng dụng mạng nơron để thiết kế hệ thống có chức xử lí ảnh nhận dạng đối tượng ảnh

Ngày đăng: 28/02/2021, 07:37