Nghiên cứu ứng dụng xử lý ảnh để nhận dạng người học

6 0 0
Nghiên cứu ứng dụng xử lý ảnh để nhận dạng người học

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

Thông tin tài liệu

Tổng quan về đề tàiHệ thống nhận dạng mặt người bao gồm hai bước:phát hiện khuôn mặt và định danh tự động đối tượng.Công việc chính dựa vào các kỹ thuật rút trích đặc trưngtừ ảnh đối tượ

1 HỘI NGHỊ TỔNG KẾT HOẠT ĐỘNG SINH VIÊN NGHIÊN CỨU KHOA HỌC VÀ NHÓM SRT NĂM HỌC 2019-2020 NGHIÊN CỨU ỨNG DỤNG XỬ LÝ ẢNH ĐỂ NHẬN DẠNG NGƯỜI HỌC STUDY ON IMAGE PROCESSING FOR STUDENTS IDENTIFICATION APPLICATION SVTH: Nguyễn Duy Hà Sơn, Đặng Sỹ Phi Hùng, Vàng Minh Tuấn Anh Tài, Mai Ngọc Đức, Ngọ Văn Khán Lớp 17KTDT1, Khoa Điện – Điện tử, Trường Đại học Sư phạm Kỹ thuật - Đại học Đà Nẵng GVHD: ThS Lê Hữu Duy Khoa Điện – Điện tử, Trường Đại học Sư phạm Kỹ thuật - Đại học Đà Nẵng Tóm tắt - Sự phát triển nhanh chóng khoa học - cơng Abstract - The rapid development of science - technology, nghệ, tự động hóa thơng minh nhân tạo, cơng nghệ xử lý hình automation and artificial intelligent, image processing technology ảnh tạo bước nhảy vọt Để tận dụng lợi are making great leaps and bounds In order to take an công nghệ phát triển này, báo này, sử advantage of these development technologies, in this paper we dụng cơng nghệ xử lý hình ảnh để xây dựng ứng dụng nhận dạng used image processing technology to build face recognition khn mặt thuật tốn nhận diện khn mặt trích xuất application using face detection algorithm and face feature thuộc tính khn mặt để xây dựng ứng dụng điểm danh sinh extraction for face verification to build student attendance viên Thông tin sinh viên lưu vào sở liệu hệ thống checking Students information is saved to the database, and our triển khai Raspberry Pi 3B, với máy system is implemented on Raspberry Pi 3B kit, with C270 HD ảnh C270 HD ngôn ngữ lập trình Python camera and Python programming language Từ khóa - Xử lý ảnh, nhận diện khuôn mặt, Raspberry,… Key words - Image processing,face recognizer Raspberry, Đặt vấn đề Giới thiệu chung 3.1 Raspberry Pi Công nghệ ngày đại, xu hướng công nghệ 4.0 tồn cầu hóa áp dụng đời sống Raspberry Pi máy tính giá 35usd kích cỡ phổ biến Ví dụ học đường, để đánh giá điểm iPhone chạy HĐH Linux Với mục tiêu chuyên cần tức điểm danh học sinh – sinh viên phải bỏ chương trình giảng dạy máy tính cho trẻ em Được phát vài phút số học inh – sinh viên lớp học triển Raspberry Pi Foundation – tổ chức phi lợi người trung, lớp học đông người nhuận với tiêu chí xây dựng hệ thống mà nhiều người có việc đánh giá chuyên cần xảy chục phút làm ảnh thể sử dụng công việc tùy biến khác hưởng thời gian giảng dạy giảng viên Công nghệ Xử lý ảnh để nhận diện khuôn mặt người giúp cải thiện vấn đề dó, tiết kiệm thời gian, kiểm tra sĩ số lớp học nhận Raspberry Pi sản xuất OEM: Sony, Qsida, diện đối tượng xác tránh trường hợp thi hộ Egoman Và phân phối Element14, RS điểm danh hộ Components Egoman Tổng quan đề tài Nhiệm vụ ban đầu dự án Raspberry Pi tạo máy tính rẻ tiền có khả lập trình cho sinh Hệ thống nhận dạng mặt người bao gồm hai bước: viên, Pi quan tâm từ nhiều đối tượng phát khuôn mặt định danh tự động đối tượng khác Đặc tính Raspberry Pi xây dựng xoay Cơng việc dựa vào kỹ thuật rút trích đặc trưng quanh xử lí SoC Broadcom BCM2835 ( chip xử lí từ ảnh đối tượng thực đối sánh để định danh tự mobile mạnh mẽ có kích thước nhỏ hay dùng động Hiệu hệ thống nhận dạng phụ thuộc vào điện thoại di động ) bao gồm CPU , GPU , xử lí âm phương pháp sử dụng /video , tính khác … tất tích hợp bên chip có điện thấp Các nghiên cứu trước để nhận diện khuôn mặt họ sử dụng: Tiếp cận dựa đặc trưng mắt, Raspberry Pi khơng thay hồn tồn hệ thống để tai, màu tóc, độ dày mơi để tự động nhận dạng Dùng bàn máy xách tay Bạn chạy Windows mạng nơron để dị tìm khn mặt ảnh Sử dụng BCM2835 dựa cấu trúc ARM nên khơng thuật tốn AdaBoost để dị tìm khn mặt kết hợp với hỗ trợ mã x86/x64 , chạy Linux thuật toán FSVM để tiến hành nhận dạng mặt người Sử với tiện ích lướt web , môi trường Desktop dụng đặc trưng SIFT để nhận dạng mặt người Hay nhiệm vụ khác Tuy nhiên Raspberry Pi thiết bị đa sử dụng deep learning, công nghệ AI để nhận đáng ngạc nhiên với nhiều phần cứng có giá thành rẻ dạng khuôn mặt hay đối tượng ảnh, video hoàn hảo cho hệ thống điện tử , dự án DIY , thiết lập hệ thống tính toán rẻ tiền cho Trong báo này, đề xuất sử dụng đặc học trải nghiệm lập trình … trưng Haar Like [1] với thuật tốn AdaBoost mơ hình phân tầng Cascade [7] để định vị khuôn mặt kết hợp với thuật tốn LBPH[5] để trích đặc trưng nhận dạng khuôn mặt Nguyễn Duy Hà Sơn, Đặng Sỹ Phi Hùng, Vàng Minh Tuấn Anh Tài, Mai Ngọc Đức, Ngọ Văn Khán Với độ phân giải lên đến 3.0MP giúp người dùng có thể chụp hình, quay video full HD 720P cho hình ảnh linh động - chân thật đến 99% Logitech C270 có khả điều chỉnh hình ảnh bạn thực gọi video bối cảnh mờ ngược sáng, camera điều chỉnh thông minh hình ảnh tốt Hình Raspberry Pi Webcam Logitech C270 full HD tương thích hoạt động với Raspberry Pi, Androi TV Box, Skype™, Google Hangouts™, Messenger, ứng dụng nhắn tin tức thời phổ biến Bên cạnh micro có tích hợp tính giảm tiếng ồn mang đến cho bạn trò chuyện rõ ràng tạp âm gây phiền nhiễu 3.3 Ngơn ngữ lập trình Python Python ngôn ngữ lập trình bậc cao cho mục đích lập trình đa năng, Guido van Rossum tạo lần đầu mắt vào năm 1991 Python thiết kế với ưu điểm mạnh dễ đọc, dễ học dễ nhớ Python ngôn ngữ có hình thức sáng sủa, cấu trúc rõ ràng, thuận tiện cho người học lập trình Cấu trúc Python cịn cho phép người sử dụng viết mã lệnh với số lần gõ phím tối thiểu Vào tháng năm 2018, Van Rossum từ chức Leader cộng đồng ngôn ngữ Python sau 30 năm lãnh đạo Hình Sơ đồ cấu tạo Raspberry Pi Python hoàn toàn tạo kiểu động dùng chế cấp phát nhớ tự động; tương tự Perl, Ruby, Ưu điểm: Scheme, Smalltalk, Tcl Python phát triển dự án mã mở, tổ chức phi lợi nhuận Python - Giá rẻ Software Foundation quản lý - Nhỏ gọn - Siêu tiết kiệm điện Ban đầu, Python phát triển để chạy - GPU mạnh Unix Nhưng theo thời gian, Python dần mở rộng sang - Phục vụ cho nhiều mục đích hệ điều hành từ MS-DOS đến Mac OS, OS/2, - Khả hoạt động liên tục 24/7 Windows, Linux hệ điều hành khác thuộc họ Unix Mặc dù phát triển Python có đóng góp Nhược điểm: nhiều cá nhân, Guido van Rossum tác giả chủ yếu Python Ông giữ vai trị chủ chốt - CPU cấu hình thấp việc định hướng phát triển Python - Lan 100 - Khơng có tích hợp WiFi (có thể mua USB WiFi 3.4 Phần mềm PHPmyadmin gắn vơ) - u cầu phải có kiến thức Linux, điện tử 3.2 WEDCAM C270 Webcam Logitech C270 full HD giúp người dùng có Hình Hình ảnh phần mềm PHPmyadmin thể trị chuyện trực tuyến với thông qua gọi video mạng Đây webcam tuyệt vời dành cho bạn chat online hay gọi video facebook Phpmyadmin phần mềm có mã nguồn mở viết ngơn ngữ lập trình PHP Người sử dụng phần mềm thường nhà quản trị sở liệu, database administrator Nhờ vào việc sử dụng phần mềm này, người dùng quản lý liệu MySQL thông qua giao diện web thay sử dụng giao diện cửa sổ dòng lệnh truyền thống Hình Thiết bị ghi hình/Webcam Logitech C270 Cài đặt Phpmyadmin Windows, Ubuntu, Mac giúp cho người dùng dễ dàng thực nhiều tác vụ HỘI NGHỊ TỔNG KẾT HOẠT ĐỘNG SINH VIÊN NGHIÊN CỨU KHOA HỌC VÀ NHÓM SRT NĂM HỌC 2019-2020 khác cập nhật, tạo mới, sửa đổi xóa bỏ Ảnh xử lý sở liệu, ghi bảng, thực báo cáo SQL, phân quyền quản lý người dùng, Những đặc tính bật Phpmyadmin: Trích chọn đặc trưng - Tăng hiệu quản lý - Giao diện web thân thiện Vectơ đặc trưng - Chế độ xem trước (Design View) Ưu điểm: - Hiệu quản lý sở liệu Phát đối - Tài nguyên lớn tượng - Đa ngôn ngữ Vị trí đối tượng Nhược điểm: - Bảo mật Phpmyadmin Phân lớp đối tượng - Sao lưu liệu Định nghĩa toán nhận dạng đối tượng Nhận dạng đối tượng (Object recognition) lĩnh vực Nhận dạng thuộc “machine learning” nghiên cứu việc tìm đối tượng ảnh hay video cho trước, việc phát Hình 6: Các bước hệ thống nhận dạng mặt người đối tượng cụ thể với lớp đối tượng khác hệ Hệ thống nhận diện điểm danh người học thống Một hệ thống điểm danh khuôn mặt bao gồm modul chính: - Modul thêm đối tượng: liệu khuôn mặt thông tin bạn học vào sở liệu Hệ thống - Modul nhận diện đối tượng: nhận diện bạn học nhận dạng mặt lưu thông tin vào sở liệu người Modul thêm đối tượng thực bước: thu ảnh đối tượng hệ thống từ camera (webcam), định vị tự động khuôn mặt, lưu ảnh khuôn mặt đối tượng vào sở liệu, rút trích đặc trưng từ ảnh khuôn mặt đối tượng huấn luyện mơ hình nhận dạng đối tượng hệ thống Hình Minh họa nhận dạng mặt người Modul nhận diện đối tượng thực thu ảnh từ camera, định vị khn mặt, rút trích đặc trưng từ ảnh Sự phát triển khoa học công nghệ thúc đẩy chi việc khuôn mặt sử dụng hệ thống nhận dạng (được huấn đưa toán nhận dạng đối tượng vào thực tiễn với mức luyện module thêm đối tượng) để nhận diện lưu độ tinh vi ngày cao, ta thấy nhiều ứng thông tin đối tượng đối tượng dụng nhận dạng đối tượng phổ biến như: camera theo dỏi trung tâm lớn, hệ thống nhận dạng tội phạm, nhận dạng vân tay, cơng nghệ robot,… Vì vậy, nhận dạng đối tượng lĩnh vực quan tâm có tính ứng dụng cao Tổng quan kiến trúc hệ thống nhận dạng đối tượng Một hệ thống nhận dạng đối tượng thông thường xử lý bốn bước sau: - Thu nhận tín hiệu (hình ảnh) tiền xử lý - Tríc chọn đặc trưng - Phát đối tượng(detection) - Phân lớp đối tượng(classification) Ảnh, video Xử lý Ảnh từ camera Ảnh từ camera liệu Nguyễn Duy Hà Sơn, Đặng Sỹ Phi Hùng, Vàng Minh Tuấn Anh Tài, Mai Ngọc Đức, Ngọ Văn Khán a) Đặc trưng cạnh (edge feature) Định vị khuôn Định vị khuôn mặt mặt b) Đặc trương đường (line feature) CSDL ảnh Rút trích đặc trưng Rút trích đặc Hệ thống c) Đặc trưng tâm (center-surround features) trưng huấn nhận dạng luyện mơ hình Hình Các đặc trưng Haar-like Nhận diện nhận dạng điểm danh Phương pháp định vị khuôn mặt cách di chuyển cửa sổ trượt ảnh (từ trái sang phải, từ xuống Hình Sơ đồ Module thêm nhận nhận diện đối tượng dưới), rút trích đặc trưng Haar-like vùng ứng viên (cửa sổ xét), đưa vào mơ hình phân lớp Adaboost Chúng ta thấy modul hệ thống theo thứ tự từ tầng đến tầng thứ N mơ hình phân cần thực thao tác quan trọng: định vị tự động tầng CBC, tầng thứ N mô hình h¬N phân lớp vùng khn mặt ảnh thu từ camera, rút trích đặc ứng viên khơng phải khn mặt người cửa sổ trượt trưng, huấn luyện mơ hình nhận dạng đối tượng hệ tiếp tục đến vị trí ảnh, vùng ứng viên thống mơ hình ht tầng thứ t phân lớp khuôn mặt người vùng ứng viên tiếp tục chuyển đến tầng thứ t+1 để xét Hệ thống đề xuất thực hiện: vùng ứng viên có phải mặt người hay khơng, q trình tiếp tục tầng N mơ hình hN phân lớp khuôn - Định vị tự động nhanh, xác khn mặt mặt người vùng ứng viên xác định khn mặt ảnh thu từ camera mơ hình phân tầng người CBC(Cascade of Boosted Classifiers)[7] sử dụng đặc trưng Haar-like B Sử dụng LBPH để nhận diện đối tượng: - Để rút trích đặc trưng dùng LBPH[5] để nhận diện LBPH toán tử kết cấu đơn giản hiệu ảnh đối tượng thu từ camera, webcam quả, gắn nhãn pixel hình ảnh cách chia vùng lân cận pixel đưa kết số nhị phân Do A Định vị khuôn mặt dùng mơ hình phân tầng sức mạnh phân biệt tính đơn giản tính tốn nó, CBC(Cascade of Boosted Classifiers) sử dụng đặc trưng toán tử kết cấu LBP trở thành phương pháp phổ Haar-like: biến ứng dụng khác Nó coi cách tiếp cận thống cho mơ hình thống kê Cửa T Tầng T Tầng N T Khuôn cấu trúc phân tích truyền thống khác Có lẽ tính chất hN mặt quan trọng toán tử LBP ứng dụng giới thực mạnh mẽ thay đổi quy mô màu xám đơn điệu gây ra, ví dụ, biến thể chiếu sáng Một tính chất quan trọng khác tính đơn giản tính tốn nó, giúp phân tích hình ảnh cài đặt thời gian thực đầy thách thức sổ h1 trượt F F Cửa sổ trượt khn mặt Hình 10: Mô tả biểu thức khuôn mặt với mã nhị phân Hình 8: Định vị khn mặt ảnh a) Tham số: LBPH sử dụng tham số • Bán kính(Radius) : bán kính sử dụng để xây dựng mơ hình nhị phân cục trịn biểu thị bán kính xung quanh pixel trung tâm Nó thường đặt thành • Neighbors: số lượng điểm mẫu để xây dựng mô HỘI NGHỊ TỔNG KẾT HOẠT ĐỘNG SINH VIÊN NGHIÊN CỨU KHOA HỌC VÀ NHÓM SRT NĂM HỌC 2019-2020 hình nhị phân cục trịn Hãy ghi nhớ: bạn bao gồm √n nhiều điểm mẫu, chi phí tính tốn cao Nó thường đặt thành D = ∑ ( hist 1¿¿ i−hist 2i)2 ¿ i=1 • Lưới X, Lưới Y : số lượng ô theo hướng ngang dọc Càng nhiều ơ, lưới mịn, chiều vectơ đặc Sơ đồ thuật toán hệ thống nhận dạng trưng kết cao 7.1 Sơ đồ khối b) Đào tạo thuật toán Camera Cơ sở Khối hiển liệu thị Trước tiên, cần đào tạo thuật toán Để làm vậy, cần sử dụng liệu với hình Khối điều ảnh khuôn mặt người mà muốn nhận khiển trung Chúng ta cần đặt ID (có thể số tên người đó) cho hình ảnh, thuật tốn sử dụng tâm thơng tin để nhận dạng hình ảnh đầu vào cung cấp cho bạn đầu Hình ảnh người phải có ID Với tập huấn luyện xây dựng, xem bước tính tốn LBPH c) Áp dụng thao tác LBPH Bước tính tốn LBPH tạo hình Nguồn ảnh trung gian mơ tả hình ảnh gốc theo cách tốt hơn, cách làm bật đặc điểm khuôn mặt Để làm Hình 13: Sơ đồ khối vậy, thuật tốn sử dụng khái niệm cửa sổ trượt, dựa 7.2 Hệ thống nhận dạng bán kính tham số lân cận (Neighbors) Haar like - CBC Hình 11: Mơ tả thuật tốn LBPH Ảnh đối Phát tượng khuôn mặt d) Trích xuất biểu đồ Bây giờ, cách sử dụng hình ảnh tạo bước Web cuối cùng, sử dụng tham số Grid X data Grid Y để chia hình ảnh thành nhiều lưới, thấy hình ảnh sau: Trích đặc trưng LBPH Hình 12: Phân tích ảnh thành biểu đồ nhị phân Xác Nhận minh diện e) Thực nhận dạng khuôn mặt danh khuôn tính mặt Trong bước này, thuật toán đào tạo Mỗi biểu đồ tạo sử dụng để thể hình ảnh từ So sánh tập liệu đào tạo Vì vậy, cung cấp hình ảnh liệu HL đầu vào, thực lại bước cho hình ảnh tạo biểu đồ đại diện cho hình ảnh Hình 14: Hệ thống nhận dạng khuôn mặt Kết thực nghiệm - Vì vậy, để tìm hình ảnh phù hợp với hình ảnh đầu vào, cần so sánh hai biểu đồ trả lại hình ảnh Trong phần này, tiến hành đánh giá hiệu với biểu đồ gần hệ thống nhận dạng mặt người đề xuất (sử dụng thuật toán Haar Like Feature – Cascade of - Chúng ta sử dụng cách tiếp cận khác Boosted Classifiers đặc trưng LBPH) Hệ thống để so sánh biểu đồ (tính khoảng cách hai biểu đồ) nhận dạng cài đặt ngơn ngữ lập trình theo công thức sau: Python sử dụng Bước phát mặt người thu từ Nguyễn Duy Hà Sơn, Đặng Sỹ Phi Hùng, Vàng Minh Tuấn Anh Tài, Mai Ngọc Đức, Ngọ Văn Khán camera (webcam) thực thông qua việc huấn lưu 20 Độ xác khoảng 94,7% ảnh luyện mơ hình phân tầng với tầng mơ hình hưởng mơi trường, sai số thông số kỹ thuật phần AdaBoost sử dụng phân lớp yếu định với cứng đặc trưng Haar-Like (hỗ trợ opencv_createsamples opencv_haartraining Chức hệ thống bao gồm: Nhận dạng xác OpenCV) tập ảnh (mặt người mặt minh đối tượng thu nhận ảnh từ camera, đối tượng người) Thư viện mã nguồn mở OpenCV Intel nhận diện đối tượng lưu huấn luyện (Bradski & Kaehler, 2012; Laganière, 2011), sở liệu ban đầu Khi xác minh đối tượng, hệ máy tính cá nhân chạy hệ điều hành Linux với phân thống lưu thông tin đối tượng lên sở liệu để phối Ubuntu giáo viên dễ dàng quản lý Thêm xóa đối tượng sở liệu Kết đạt được: Tuy nhiên tồn số hạn chế: Hệ thống hoạt động ổn định hệ điều hành, máy tính, thiết bị có cấu hình tốt Chương trình điểm danh, lưu thông tin đối tượng chưa tối ưu Hệ thống hoạt động tốt đáp ứng đủ điều kiện môi trường lưu mẫu đối tượng Có khả bị đánh lừa công nghệ nhận dạng: dùng ảnh hay video để thay nhận dạng Kết luận hướng phát triển Hình 15: Giao diện nhận dạng Trong báo này, chúng tơi trình bày việc ứng dụng xử lý ảnh để nhận dạng điểm danh người học (sử dụng thuật toán Haar Like Feature – Cascade of Boosted Classifiers đặc trưng LBPH) định vị khuôn mặt, huấn luyện liệu nhận dạng đối tượng Hệ thống làm việc ổn định đáp ứng mục tiêu đề Trong tương lai tiếp tục thực nghiệm tập liệu lớn hơn, xây dựng thuật tốn để tăng độ xác sau xây dựng mơ hình hồn thiện, đưa vào thị trường, trường học, quan ứng dụng vào nhiều ngành nghề lĩnh vực khác liên quan đến công nghệ nhận diện khn mặt Hình 16: Hiển thị thơng tin khn mặt nhận diện Tài liệu tham khảo [1] https://viblo.asia/p/haar-cascade-la-gi-luan-ve-mot-ky-thuat- chuyen-dung-de-nhan-biet-cac-khuon-mat-trong-anh- E375zamdlGW [2] https://github.com/kelvins/lbph [3] http://www.scholarpedia.org/article/Local_Binary_Patterns [4] https://techinsight.com.vn/nhan-dien-khuon-mat-va-ung-dung-thuc- te/ [5] https://towardsdatascience.com/face-recognition-how-lbph-works- 90ec258c3d6b [6] https://raspberrypi.vn/ [7] Paul Viola, Michael Jones, “Rapid Object Detection using a Boosted Cascade of Simple Features”, accepted conference on computer vision and pattern recognition, năm 2001, tr.1-7 [8] Phạm Hồng Ngự, Nhận dạng đối tượng sử dụng thuật toán ADABOOST, Trường Đại Học Khoa Học Huế, năm 2009, tr.37-62 Hệ thống hoạt động ổn định với số lượng đối tượng Hình 17 Hiển thị thơng tin đối tượng sở liệu

Ngày đăng: 06/03/2024, 10:06

Từ khóa liên quan

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

Tài liệu liên quan