Đồ án tốt nghiệp Công nghệ Thông tin: Nghiên cứu phương pháp phân lớp nhị phân trong nhận dạng giới tính qua ảnh

47 99 0
Đồ án tốt nghiệp Công nghệ Thông tin: Nghiên cứu phương pháp phân lớp nhị phân trong nhận dạng giới tính qua ảnh

Đ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

Mục đích của đồ án nhằm nghiên cứu bài toán phân lớp nhị phân để khi ta đưa một bức ảnh vào thì ta có thể dùng thuật toán trong bài toán phân lớp nhị phân để đưa ra giới tính của một bức ảnh là nam hay nữ. Để nắm rõ các nội dung nghiên cứu, mời các bạn cùng tham khảo đồ án.

TRƯỜNG ĐẠI HỌC VINH VIỆN KỸ THUẬT VÀ CƠNG NGHỆ ­­­­­­­­­­­­­­­­­­­­­­­­­­                                                    ĐINH THỊ NHUNG NGHIÊN CỨU PHƯƠNG PHÁP PHÂN LỚP NHỊ PHÂN  TRONG NHẬN DẠNG GIỚI TÍNH QUA ẢNH ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC  NGÀNH CƠNG NGHỆ THƠNG TIN Nghệ An, 05 năm 2019                                               TRƯỜNG ĐẠI HỌC VINH VIỆN KỸ THUẬT VÀ CƠNG NGHỆ ­­­­­­­­­­­­­­­­­­­­­­­­­­ NGHIÊN CỨU PHƯƠNG PHÁP PHÂN LỚP NHỊ PHÂN  TRONG NHẬN DẠNG GIỚI TÍNH QUA ẢNH  ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC  NGÀNH CƠNG NGHỆ THƠNG TIN                                      Sinh viên thực hiện: Đinh Thị Nhung Mã sinh viên: 145D4802010033 Lớp:  55k1­CNTT Giảng viên hướng dẫn:  Võ Đức Quang Nghệ An, 05/ 2019 LỜI CAM ĐOAN Đồ án này là cơng trình nghiên cứu của cá nhân em, được thực hiện dưới sự  hướng dẫn của Ths.  Võ Đức Quang.  Các số  liệu, những kết luận nghiên  cứu được trình bày trong đồ án  này hồn tồn trung thực. Em xin hồn tồn  chịu trách nhiệm về lời cam đoan này                                                                                                                                                                                Ngh ệ An, ngày…. tháng… năm 2019                                                                                Sinh viên thực hiện                                                                                                                                                                         Đinh Thị Nhung MỤC LỤC DANH MỤC TỪ VIẾT TẮT TT Từ viết tắt Ý nghĩa AI Trí tuệ nhân tạo PLA Perceptron Learning Algorithm SVM Support Vector Machine DANH MỤC BẢNG BIỂU Hình 1: Ví dụ về bài tốn phân lớp Hình 2: Mơ hình bài tốn phân lớp Hình 3: Bài tốn Perceptron Hình 4: Bài tốn SVM Hình 5: Sơ đồ tổng quan hệ thồng nhận dạng ảnh Hình 6: Mơ hình nhận dạng giới tính qua ảnh Hình 7: Ví dụ về logistic regression Hình 8: Bảng dữ liệu hoạt động của chim cánh cụt Hình 9: Đồ thị sigmoid function Hình 10: Các ví dụ mẫu trong AR face database Hình 11: Ví dụ về kết quả tìm được bằng Logistic Regression LỜI CẢM ƠN Để  hồn thành đồ  án tốt nghiệp, lời đầu tiên em xin chân thành cảm  ơn   đến tồn thể thầy cơ trong trường Đại Học Vinh và các thầy cơ trong Viện   Kỹ Thuật và Cơng Nghệ, đặc biệt hơn là các thầy cơ trong nganh cơng ngh ̀ ệ  thơng tin, bộ  mơn hệ  thống thơng tin nói riêng, những người đã tận tình  hướng dẫn dạy dỗ  và trang bị  cho em những kiến thức bổ  ích trong năm  năm vừa qua Đặc biệt em xin chân thành gửi lời cảm  ơn sâu sắc đến thầy giáo Ths. Võ  Đức Quang, người đã tận tình hướng dẫn, trực tiếp chỉ bảo và tạo mọi điều   kiện giúp đỡ em trong suốt q trình làm đồ án tốt nghiệp Sau cùng em xin gửi lời cảm  ơn chân thành tới gia đình, bạn bè, anh chị  khóa trên đã động viên, cổ  vũ và đóng góp ý kiến trong q trình học tập,  nghiên cứu cũng như q trình làm đồ án tốt nghiệp Em xin chân thành cảm ơn! Nghệ An, tháng 05 năm 2019 Sinh viên thực hiện Đinh Thị Nhung MỞ ĐẦU Lý do chọn đề tài         Ngay nay, ̀  trí tuệ nhân tạo đang phát triển mạnh mẽ và xâm nhập vào rất  nhiều lĩnh vực trong cuộc sống như tự động dịch thuật, nhận dạng giọng nói,   điều khiển tự động, nhận dạng khn mặt, nhận dạng chữ viết tay. v.v. Nó giờ  được coi là xu hướng cơng nghệ thế giới và nhiều người cho rằng đó là cuộc  cách mạng cơng nghiệp lần thứ 4        Trong lĩnh vực AI, học máy (machine learning)  là một lĩnh vực liên quan  đến việc nghiên cứu cac ky thuât và xây d ́ ̃ ̣ ựng các hệ thống co thê “h ́ ̉ ọc”tự động   từ dữ liệu, từ đo gi ́ ải quyết cac v ́ ấn đề bai toan cu thê. Hay nói cách khác h ̀ ́ ̣ ̉ ọc   máy phân nao đo giúp cho máy tính có thê x ̀ ̀ ́ ̉ ử ly d ́ ư liêu va đ ̃ ̣ ̀ ưa ra qut đinh nh ́ ̣ ư  con người. Ví dụ khi đưa một bức ảnh vào thì máy tính có thể xử lý bức ảnh   xem ảnh đó là nam hay là nữ         Trong cac bài tốn Machine learning có hai lo ́ ại bài tốn đặc trưng đó là bài  tốn phân lớp và phân cụm. Mơi bai toan co nh ̃ ̀ ́ ́ ưng đăc tr ̃ ̣ ưng riêng va pham vi ap ̀ ̣ ́  dung vao cac loai bai toan th ̣ ̀ ́ ̣ ̀ ́ ực tê khac nhau. Bên canh đo, bai toan nh ́ ́ ̣ ́ ̀ ́ ận dạng và  xử lý ảnh la môt bai toan hâp dân va co tinh  ̀ ̣ ̀ ́ ́ ̃ ̀ ́ ́ ưng dung cao. Trong khuôn khô đô ́ ̣ ̉ ̀  nay, em se đi sâu vao nghiên c ̀ ̃ ̀ ưu bai toan phân l ́ ̀ ́ ơp va cu h ́ ̀ ̣ ơn la thuât toan ̀ ̣ ́  Logistic Regession đê ap dung vao nhân dang gi ̉ ́ ̣ ̀ ̣ ̣ ơi tinh  ́ ́ qua dữ liêu  ̣ ảnh đâu vao, ̀ ̀  xem ảnh đó là nam hay là nữ. Hơn nưa, đơ an cung se th ̃ ̀́ ̃ ̃ ử nghiêm đanh gia hiêu ̣ ́ ́ ̣   qua phân l ̉ ơp cua thuât toan trên môt bô d ́ ̉ ̣ ́ ̣ ̣ ư liêu cu thê AR face database ̃ ̣ ̣ ̉ Mục đích nghiên cứu  Mục đích của đề tài là nghiên cứu bài tốn phân lớp nhị phân để khi ta đưa  một bức  ảnh vào thì ta có thể  dùng thuật tốn trong bài tốn phân lớp nhị  phân để đưa ra giới tính của một bức ảnh là nam hay nữ.  Phạm vi thực hiện Thực hiện đánh giá trên bộ dữ liệu AR face database  Nội dung thực hiện  Để  nghiên cứu phương pháp phân lớp nhị  phân trong nhận dạng giới tính  qua ảnh thì ta cần thực hiện các bước sau đây: Tìm hiểu bài tốn phân lớp nhị  phân, bài tốn nhận dạng và xử  lý  ảnh, bài tốn nhận dạng giới tính qua ảnh Tìm hiểu thuật tốn Logistic Regression để  nhận dạng giới tính của   mỗi bức ảnh Cuối cùng là đưa bộ dữ liệu vào thử nghiệm và đánh giá   5. Cấu trúc đồ án ­ Mở đầu ­ Chương 1: Cơ sở lý thuyết ­ Chương 2: Nghiên cứu thuật tốn Logistic Regression ­ Chương 3: Thử nghiệm nhận dạng giới tính qua ảnh sử dụng bộ cơ sở dữ  liệu AR face data base ­ Chương 4: Kết luận 1.2.2. Cài đăt Pycharm Khi q trình cài đặt đã hồn tất, chạy tập tin exe  để  cài đặt PyCharm   Chương trình cài đặt sẽ được khởi động. Click vào “Next”: Trên màn hình tiếp theo, thay đổi đường dẫn cài đặt nếu cần thiết. Sau đó  click vào “Next”: Trên màn hình tiếp theo, bạn có thể lựa chọn tạo một biểu tượng trên màn  hình desktop nếu bạn muốn và sau đó click “Next”: Lựa chọn thư mục Start Menu. Tiếp tục lựa chọn JetBrains sau đó click vào  “Install”: Chờ đợi cho tới khi q trình cài đặt kết thúc Khi q trình cài đặt kết thúc, bạn sẽ nhận được thơng báo trên màn hình  rang PyCharm đã được cài đặt. Nếu bạn muốn tiếp tục và chạy thử nó,  click vào ơ “Run PyCharm Community Edition”, sau đó click “Finish” Sau khi bạn click vào “Finish”, màn hình sau sẽ hiện ra: 1.3  Cài đặt bộ thư viện  ­ numpy ­ scipy ­ matplotlib ­ sklearn ­ pillow Thử Nghiệm  2.1 Bộ dữ liệu    Vì lý do em khơng thể  có bộ  dữ  liệu AR face database. Nên em đã sử  dụng bộ cơ sở dữ liệu em tự tạo bao gồm hơn 25  ảnh màu tương ứng với  khn mặt của 10 người (5 nam, 5 nữ). Với mỗi người,  5 bức ảnh được với  sắc thái biểu cảm khn mặt khác nhau.  Hình ảnh nam được lưu trữ dưới dạng: M­xxx­yy.png Nữ giới như: W­xxx­yy.png ‘xxx’ là xxx là id của người “yy” chỉ định các tính năng của từng hình ảnh; ý nghĩa của nó được mơ tả ở  bảng sau: 1. Biểu hiện trung bình 2. Cười 3. Tức giận 4. Há miệng ­Bộ  cơ  sở  dữ  liệu bao gồm  25  bức  ảnh từ  5  nam và  5  nữ. Hơn nữa, các  khn mặt cũng đã được xác định chính xác và được cropped với kích thước  11292(pixel) bằng phương pháp được mơ tả  trong bài báo PCA veus LDA.  Tơi xin bỏ qua phần xử lý này và trực tiếp sử dụng ảnh đã cropped như một  số ví dụ dưới đây:          Hình 10: Các ví dụ mẫu trong AR face database          Mỗi bức ảnh trong AR Face thu gọn được đặt tên dưới dạng G­xxx­yy.png.  Trong đó: G nhận một trong hai giá trị M (man) hoặc W (woman); xxx là id  của người, nhận gía trị  từ 001 đến 005; yy là điều kiện chụp, nhận giá trị  từ 01 đến 06, trong đó các điều kiện có số  thứ  tự  từ 01 đến 06 là các khn  mặt khơng bị che bởi kính hoặc khăn. mỗi điều kiện này là một view  2.2 Cách thử nghiệm Để làm ví dụ cho thuật tốn Logistic Regression, em lấy ảnh của 3 nam và 3  nữ đầu tiên làm tập training set; 2 nam và 2 nữ còn lại làm test set. Với mỗi   người, em chỉ lấy các khn mặt khơng bị che bởi kính và khăn Feature Extraction:  vì mỗi bức  ảnh có kích thước 3x112x92 (số  channels 3,  chiều cao 112, chiều rộng 92).  Chuyển  ảnh màu về ảnh xám theo cơng thức Y' = 0.299 R + 0.587 G  + 0.114 B Kéo dài ảnh xám thu được thành 1 vector hàng có số  chiều 112x92,  sau     sử   dụng   một random   projection   matrix để   giảm   số   chiều  về 500.  Và bây giờ ta làm việc với python: Em   sử   dụng   hàm   sklearn.linear_model.LogisticRegression     thư   viện   sklearn cho bài thử nghiệm này 2.3  Các thủ tục   Khai báo thư viện  Phân chia training set và test set, lựa chọn các views  Tạo random projection matrix  Xây dựng danh sách các tên files  Feature Extraction: Xây dựng dữ liệu cho training set và test set  thực hiện thuật toán Logistic Regression, dự đoán output của test data và   đánh giá kết quả. Một chú ý nhỏ, hàm Logistic Regression trong thư  viện  sklearn   có   nhiều   biến   thể   khác     Để   sử   dụng   thuật   tốn   Logistic   Regression thuần mà tơi đã giới thiệu trong bài Logistic Regression, chúng ta  cần đặt giá trị cho C là một số lớn để nghịch đảo của nó gần với 0 Đánh giá Sau khi thử nghiệm với bộ cơ sở dữ liệu thì kết quả phân lớp đạt 65% Đối với mỗi  ảnh có thể  hiện thị  xác suất  ảnh đó thuộc về  giới tính nam  hay nữ bao nhiêu phần %                 Hình 11: Ví dụ về kết quả tìm được bằng Logistic Regression CHƯƠNG IV: KẾT LUẬN Những kết quả đạt được của đề tài: ­ Đã tìm hiểu các kiến thức về Machine Learning ­ Các bài tốn phân lớp đặc biệt là bài tốn phân lớp nhị  phân, cùng  một số thuật tốn phân lớp phổ biến ­ Đã tìm hiểu kỹ thuật tốn Logistic Regression  ­ Đã áp dụng thuật tốn Logistic Regression để nhận dạng được giới  tính qua ảnh với tỷ lệ cao 65 % Hạn chế: Trong qua trình làm đồ án em còn mắc phải nhiều vấn đề: Như  tìm hiểu về thuật tốn còn gặp nhiều khó khăn, kiến thức còn mới mẻ, thời  gian còn hạn chế Hướng phát triền: em tiếp tục nghiên cứu các thuật tốn Machine Leaning  và áp dụng thuật tốn Logicstic Regression trong các bài tốn khác Trong q thực hiện đồ án tốt nghiệp, em đã cố gắng hết sức để tìm hiểu,  học hỏi vì khả  năng còn giới hạn, khơng tránh khỏi những sai sót, nên có  thể chưa giải quyết được tất cả các vấn đề đặt ra. Em rất mong nhận được   sự thơng cảm của q thầy cơ và các bạn. Em xin chân thành cảm ơn  TÀI LIỆU THAM KHẢO [1] Sebastia Raschka, Python Machine Learning, 2015 [2] Vũ Hữu Tiệp, Machine Learning cơ bản, NXB Khoa Học Và Kỹ Thuật,  2018 [3]  https://machinelearningcoban.com/2017/02/11/binaryclassifiers/  [4]  https://machinelearningcoban.com/2017/01/27/logisticregression/ [5]  https://en.wikipedia.org/wiki/Grayscale#Luma_coding_in_video_systems [6] https://machinelearningcoban.com/general/2017/02/06/featureengineering/ ... ứng dụng thực tế cho bài tốn nhận dạng và xử  lý ảnh thì trong đồ án   này em áp dụng bài tốn phân lớp nhị phân để nhận dạng giới tính qua ảnh là nam hay là nữ.  3. Bài tốn nhận dạng giới tính qua ảnh khn mặt 3.1. Giới thiệu... VIỆN KỸ THUẬT VÀ CƠNG NGHỆ ­­­­­­­­­­­­­­­­­­­­­­­­­­ NGHIÊN CỨU PHƯƠNG PHÁP PHÂN LỚP NHỊ PHÂN  TRONG NHẬN DẠNG GIỚI TÍNH QUA ẢNH ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC  NGÀNH CƠNG NGHỆ THƠNG TIN                ...                                   Hình 5. Sơ đồ tổng quan hệ thống nhận dạng ảnh Các bài tốn nhận dạng ảnh: Nhận dạng chữ viết Nhận dạng khn mặt Nhận dạng khn mặt để gắn thẻ trên facebook Phân biệt hai chữ số viết tay Nhận dạng giới tính qua ảnh của khn mặt

Ngày đăng: 09/01/2020, 13:24

Từ khóa liên quan

Mục lục

  • DANH MỤC TỪ VIẾT TẮT

  • DANH MỤC BẢNG BIỂU

  • MỞ ĐẦU

    • 1. Lý do chọn đề tài

    • 2. Mục đích nghiên cứu

    • 3. Phạm vi thực hiện

    • 5. Cấu trúc đồ án

    • CHƯƠNG I: CƠ SỞ LÝ THUYẾT

      • 1. Học máy (Machine Learning)

      • 1.1 Giới thiệu

        • 1.2 Bài toán phân cụm

        • 1.3 Bài toán phân lớp

        • 2. Bài toán nhận dạng và xử lý ảnh

        • 3. Bài toán nhận dạng giới tính qua ảnh khuôn mặt.

          • 3.1. Giới thiệu

          • Việc phân tích và trích xuất các thông tin của khuôn mặt được các nhà khoa học nghiên cứu từ những năm 90 của thế kỉ trước. Điều này là do có rất nhiều thông tin bổ ích được khai thác từ một bức ảnh khuôn mặt, ví dụ như danh tính, giới tính, cảm xúc của con người, tình trạng sức khỏe. Trong số các thông tin được khai thác từ ảnh mặt người thì giới tính là một thuộc tính quan trong vì nó có khá nhiều ứng dụng trong thực tế như điều tra dân số và thống kê dân số.

          • 3.2. Mô hình bài toán nhận dạng giới tính

          • CHƯƠNG II: THUẬT TOÁN PHÂN LỚP NHỊ PHÂN LOGISTIC REGRESSION

            • Mục tiêu:

            • 3. Mô hình Logistic Regression

            • CHƯƠNG III: THỬ NGHIỆM NHẬN DẠNG GIỚI TÍNH QUA ẢNH SỬ DỤNG BỘ DỮ LIỆU AR FACE DATABASE

              • 1.2. Cài đặt Pycharm

              • 1.3 Cài đặt bộ thư viện

              • 2.2 Cách thử nghiệm

              • 2.3 Các thủ tục

              • CHƯƠNG IV: KẾT LUẬN

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

Tài liệu liên quan