I.NHIỆM VỤ VÀ NỘI DUNG:1.Tìm hiểu phương pháp nhận dạng vật thể Bag of Words2.Xây dựng hệ thống nhận dạng dựa hên phương pháp Bag of Words3.Đề xuất phương pháp kiểm chứng và đánh giá hệ thống4.Từ hệ thống xây dựng được và kết quả đánh giá của hệ thống, xác định các ưu điểm, nhược điểm và đưa ra các kiến nghị cho các nghiên cứu tiếp theo.
ĐẠI HỌC QUỐC GIA TP HCM TRƯỜNG ĐẠI HỌC BÁCH KHOA PHẠM HỮU THIỆN NHẬN DẠNG VẬT THỂ SỬ DỤNG GIẢI THUẬT SIFT VÀ BỘ TỪ ĐIỂN TRỰC QUAN Chuyên ngành : Kỹ thuật Điện Tử Mã số: 60 52 02 03 LUẬN VÀN THẠC SĨ TP HỊ CHÍ MINH, tháng 01 năm 2017 CƠNG TRÌNH ĐƯỢC HỒN THÀNH TẠI TRƯỜNG ĐẠI HỌC BÁCH KHOA -ĐHQG -HCM Cán hướng dẫn khoa học : PGS TS HOÀNG TRANG Cán chấm nhận xét : TS TRƯƠNG CÔNG DUNG NGHI Cán chấm nhận xét : TS NGUYỄN MINH SƠN Luận văn thạc sĩ bảo vệ Trường Đại học Bách Khoa, ĐHQG Tp HCM ngày 05 tháng 01 năm 2017 Thành phần Hội đồng đánh giá luận vãn thạc sĩ gồm: (Ghi rõ họ, tên, học hàm, học vị Hội đồng chấm bảo vệ luận văn thạc sĩ) PGS TS Lê Tiến Thường TS.Trương Cơng Dung Nghi PGS TS Hồng Trang TS Trương Quang Vinh TS Lê Chí Thơng TS Bùi Trọng Tú TS Nguyễn Minh Sơn Xác nhận Chủ tịch Hội đồng đánh giá LV Trưởng Khoa quản lý chuyên ngành sau luận vãn sửa chữa (nếu có) CHỦ TỊCH HỘI ĐỒNG TRƯỞNG KHOA ĐẠI HỌC QUỐC GIA TP.HCM CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM TRƯỜNG ĐẠI HỌC BÁCH KHOA Độc lập - Tự - Hạnh phúc NHIỆM VỤ LUẬN VĂN THẠC SĨ Họ tên học viên: PHẠM HỮU THỆN MSHV: 7140388 Ngày, tháng, năm sinh: 29.11.1990 Nơi sinh: Long An Chuyên ngành: Kỹ Thuật Điện Tử Mã số: 60 52 02 03 I TÊN ĐỀ TÀI: NHẬN DẠNG VẬT THỂ SỬ DỤNG GIẢI THUẬT SIFT VÀ BỘ TỪ ĐIỂN TRỰC QUAN II NHIỆM VỤ VÀ NỘI DUNG: Tìm hiểu phương pháp nhận dạng vật thể Bag of Words Xây dựng hệ thống nhận dạng dựa hên phương pháp Bag of Words Đề xuất phương pháp kiểm chứng đánh giá hệ thống Từ hệ thống xây dựng kết đánh giá hệ thống, xác định ưu điểm, nhược điểm đưa kiến nghị cho nghiên cứu III NGÀY GIAO NHIỆM VỤ : 11/01/2016 IV NGÀY HOÀN THÀNH NHIỆM VỤ: 04/12/2016 V CÁN BỘ HƯỚNG DẪN: PGS TS HOÀNG TRANG Tp HCM, ngày tháng năm 201 CÁN BỘ HƯỚNG DẪN (Họ tên chữ ký) CHỦ NHIỆM BỘ MÔN ĐÀO TẠO (Họ tên chữ ký) PGS TS HOÀNG TRANG PGS TS HOÀNG TRANG TRƯỞNG KHOA (Họ tên chữ ký) TS ĐỖ HỒNG TUẤN LỜI CẢM ƠN Để hồn thành luận văn này, tơi xin tỏ lòng biết on sâu sắc đến Thầy TS.Hoàng Trang, thầy tận giúp đỡ góp ý suốt q trình viết luận văn Tôi chân thành cảm ơn quý thầy cô khoa Điện-Điện tử Truờng Đại Học Bách Khoa Thành Phố Hồ Chí Minh tận tình truyền đạt kiến thức năm học tập Với vốn kiến thức đuợc tiếp thu q trình học khơng tảng cho q trình nghiên cứu khóa luận mà hành trang để tơi sử dụng suốt q trình làm việc học tập Tơi chân thành cảm ơn bạn học viên cao học bạn sinh viên ừong khoa Điện-Điện tử giúp đỡ hỗ trợ tơi suốt q trình học tập thực luận văn Tôi xin cảm ơn gia đình người thân hỗ trợ tơi hồn thành khóa học Cuối tơi kính chúc q thầy dồi sức khỏe thành cơng ương nghiệp cao q Đồng kính chúc bạn sinh viên học viên khoa Điện-Điện tử dồi sức khỏe, đạt nhiều thành công tốt đẹp công việc Xin chân thành cảm ơn! Phạm Hữu Thiện TÓM TẮT LUẬN VĂN Luận văn tập trung vào lĩnh vực “nhận dạng vật thể” dựa hên đặc trưng cục toàn cục ảnh Một hệ thống tạo để thực nhiệm vụ Nó có khả nhận dạng vật thể quen thuộc xung quanh người phạm vi vật thể xuất với cảnh không phức tạp Phương pháp sử dụng luận vãn BoW (Bag of Words) Các công đoạn tạo sở liệu, xây dựng từ điển, huấn luyện máy học để định tác giả thực Ương luận văn Ngoài ra, ương bước tạo sở liệu tác giả đưa giải pháp để cải thiện chất lượng nhận dạng cho phù hợp với mục tiêu nhận dạng vật thể quen thuộc giảm thiểu nhận dạng sai vật thể không huấn luyện Cơ sở liệu mà tác giả sử dụng kết lần thử nghiệm với nhiều sở liệu khác Nó kết trình: tạo sở liệu, huấn luyện, nhận dạng cập nhật sở liệu Trong trình tạo từ điển, tác giả sử dụng phương pháp trích xuất đặc trưng SIFT phương pháp chia cụm K-Means để lượng tử đặc trưng thành từ Ương từ điển Với phương pháp trích xuất đặc trưng SIFT, hệ thống tạo có khả nhận dạng với nhiều ảnh có tỉ lệ vật thể khác góc chụp khác Để định vật thể ảnh, tác giả sử dụng máy học SVM để định Với số lớp phân loại tương ứng với vật thể trường hợp vật thể không xuất hiện, vật thể mà hệ thống có khả phân loại là: cọp, hộp sữa, tiền PCB (Printing Cữcuit Board) ABSTRACT This thesis focuses on the field of “object recognition” based on the partial and total key-points of a picture A system will be made to implement this work It has the capability to recognize familiar objects around by someone within objects appearance with non-complex background The method used in this thesis is BoW (Bags of Words) The processes of creating an image database, building a dictionary and training a learning-machine to make decisions will be implemented by the author within this thesis In addition, in the step of creating image database, the author will recommend solutions to improve the recognition quality for suiting the target of familiar objects recognition and decreasing wrong recognition for non-trained objects The image database used for this system is the result of many experiences with some difference databases This is the result of the process: creating image database, training for this database, recognizing and updating this database In the step of creating dictionary, the author uses the method of exttacting keypoint SIFT and the method of sharing cluster K-Means to quantize key-points into words in dictionary Basing on the SIFT method, the system will has the ability to recognize many pictures with the scale of different objects and different viewpoints To decide what object in a picture is, the author builds a learning-machine SVM to make decision With classifications, including objects and cases of non- object, some objects that the system can classify are: tiger, milk (box), cash, PCB (Printing Cừcuit Board) LỜI CAM ĐOAN Tôi xin cam đoan Luận văn thạc sỹ: “Nhận dạng vật thể sử dụng giải thuật SIFT từ điển trực quan” kết trình học tập, nghiên cứu khoa học độc lập nghiêm túc Các số liệu luận văn trung thực, có nguồn gốc rõ ràng, trích dẫn có tính ke thừa từ báo khoa học, cơng trình nghiên cứu Các giải pháp nêu luận văn rút từ sở lí luận q trình nghiên cứu thực tiễn Hồ Chí Minh, ngày 19 tháng 12 năm 2016 Phạm Hữu Thiện MỤC LỤC CHƯƠNG GIỚI THỆU 1.1 Giới thiệu đề tài 1.2 Mục tiêu nghiên cứu 1.3 Nội dung nghiên cứu 1.4 Phạm vi nghiên cứu 1.5 Cấu trúc luận văn CHƯƠNG 2: TÌNH HÌNH NGHIÊN cứu VÀ PHÂN TÍCH TỔNG QUAN LÝ THUYẾT 2.1 Tình hình nghiên cứu ngồi nuớc 2.1.1 Nghiên cứu nước 2.1.2 Nghiên cứu nước 10 2.2 Phân tích tổng quan lý thuyết 10 2.2.1 Giải thuật SIFT 12 2.2.2 Giải thuật SURF 19 2.2.3 Giải thuật phân cụm K-Means 22 2.2.4 MáyhọcSVM 27 2.2.5 Giới thiệu thư viện OpenCV 31 CHƯƠNG 3: NHẬN DẠNG VẬT THÊ 33 3.1 Giới thiệu phương pháp Bag-of-Words 34 3.1.1 Trích xuất đặc trưng ảnh sở liệu 35 3.1.2 Xây dựng từ điển 36 3.1.3 Lập histogram cho ảnh tiên đoán vật thể ảnh 31 3.2 Mơ hình tổng qt hệ thống 38 3.3 Tạo sở liệu 40 3.4 Xây dựng từ điển 41 3.5 Huấn luyện máy học SVM 43 Nhận dạng 46 3.6 3.7 Thực BoW thư viện OpenCV ừên hệ điều hành Ubuntu (Linux) 47 3.7.1 Tạo sở liệu 47 3.7.2 Xây dựng từ điển 48 3.7.3 Huấn luyện máy học SVM điều chỉnh lại sở liệu 49 CHƯƠNG 4: KIỂM CHỨNG VÀ ĐÁNH GIÁ ĐỀ TÀI 69 4.1 Phương pháp kiểm chứng: 70 4.1.1 Kết nhận dạng đổi với ảnh 70 4.1.2 Kết nhận dạng đổi với camera video 74 Đánh giá: 78 4.2 4.2.1 Đánh giá độ xác hệ thống 78 4.2.2 Đánh giá thời gian nhận dạng hệ thống 79 4.2.3 Đánh giá thời gian huấn luyện xây dựng hệ thống 80 CHƯƠNG 5: KẾT LUẬN VÀ KIẾN NGHỊ 81 5.1 Kết đạt 82 5.2 Ưu điểm, nhược điểm 82 5.2.1 ưu điểm 82 5.2.2 Nhược điểm 82 5.3 Đóng góp luận vãn 83 5.3.1 Đóng góp khoa học 83 5.3.2 Đóng góp thực tiễn 83 5.4 Hướng mở rộng kiến nghị 84 5.4.1 Hướng mở rộng 84 5.4.2 Kiến nghị 84 TÀI LỆƯ THAM KHẢO 85 DANH MỤC CÁC CHỮ VIẾT TẮT STT Chữ viết tắt Ý nghĩa SIFT PCB Bảng mạch in - Printing cừcuit board BoF Phuong pháp Bag of Features BoW Phuong pháp Bag of Words SURF Giải thuật SURF - Speeded-Up Robust Features Giải thuật SIFT - Scale-Invariant Feature Transform Giải thuật RIFT - Rotation-Invariant Feature RIFT Transform Cuộc thi ILSVRC - ImageNet Large Scale Visaul ILSVRC SVM Máy học SVM - Support vector machine DoG Difference of Gaussians Recogni-tion Challenge 67 Nhận dạng với vật thể “tiền”: Hình 3.7.3.24: Nhận dạng với vật thể “Tiền” Nhận dạng vói vật thể khơng có sở liệu: a a a a Hình 3.7.3.25: Nhận dạng với vật thể khơng có sở liệu 68 Ta nhận thấy kết lần thử khơng có nhiều cải thiện so với kết truớc Nhung tốt kết cũ Nhu vậy, sau lần thử kết lần thử cuối tốt Vì vậy, tác giả chọn sở liệu kết huấn luyện lần để thực kiểm chứng cho đề tài luận văn Quá trình kiểm chứng thực chương sau 69 CHƯƠNG 4: KIÊM CHỨNG VÀ ĐÁNH GIÁ ĐÈ TÀI Từ kết thử nghiệm chọn sở liệu thích hợp chương 3, chương đề phương pháp kiểm chứng tiến hành kiểm chứng cho hệ thống mà tạo Ngoài ra, tác giả tiến hành đánh giá hệ thống với tiêu chí độ xác, thời gian nhận dạng thời gian huấn luyện xây dựng hệ thống 70 4.1 Phương pháp kiểm chứng: Đầu tiên tác giả thu thập ảnh để thực trình kiểm chứng sau: - Thu thập 160 ảnh 640x480 cho vật thể, tổng cộng ta có 800 ảnh cho vật thể (bao gồm trường hợp vật thể không xuất hiện) - Nhận dạng trực tiếp camera kết nối với máy tính video quay máy quay phim cho tất vật thể với tổng thời gian 6.5 Trong tổng số 800 ảnh 6.5 video, tác giả chia trường hợp thu thập khác để đánh giá khả nhận dạng hệ thống Các trường hợp bao gồm sau: - Ảnh chụp với cảnh phức tạp: vật thể bị che khuất, không bị che khuất - Ảnh chụp với cảnh đơn giản: vật thể bị che khuất, không bị che khuất - Nhận dạng trực tiếp từ camera kết nối với máy tính video tự quay: nhận dạng nơi có cảnh phức tạp nơi cảnh đơn giản, vật thể bị che khuất không bị che khuất Với vật thể nhận dạng camera thay đổi góc độ thường xuyên thời gian quay tập trung vào vật thể 4.1.1 Kết nhận dạng ảnh 71 Nhận dạng ảnh vói cảnh phức tạp Hình 4.1.1.1: Nhận dạng với cảnh nên phức tạp A Vật thể không bị che; B Vật thể bị che 72 Kết nhận dạng với cảnh phức tạp bảng sau: Vật thể bị che Tổng Vật thể không bị che % Phát Tổng Phát % Con Cọp 40 11 27.5 40 14 35 Hộp Sữa 40 15 37.5 40 18 45 PCB 40 10 25 40 17 42.5 Tiền 40 13 32.5 40 15 37.5 Vật thể lạ 40 40 100 40 40 100 Bảng 4.1.1.1: Kết nhận dạng ảnh với cảnh phức tạp Với trường họp thử nghiệm ảnh có cảnh phức tạp, ảnh chứa hỗn loạn nhiều đặc trưng Cụ thể ảnh chứa đặc trưng vật thể chứa đặc trưng vật thể khác đặc trưng không mong muốn Trong đó, đặc điểm máy học SVM nhận dạng với độ xác cao cho histogram đặc trưng giống tương tự mà huấn luyện Khi có đặc trưng hỗn tạp pha vào gây nhiều trường hợp nhận dạng sai vật thể thành vật thể khác không nhận dạng vật thể Chính vậy, trường hợp nhận dạng với ảnh có cảnh phức tạp cho kết nhận dạng bị sai nhiều 73 Nhận dạng ảnh vói cảnh đơn giản Hình 4.1.1.2: Nhận dạng với cảnh đơn giản A Vật thể không bị che; B Vật thể bị che 74 Kết nhận dạng với cảnh đơn giản bảng sau: Vật thể bị che Tổng Vật thể không bị che % Phát Tổng Phát % Con Cọp 40 32 80 40 37 92.5 Hộp Sữa 40 37 92.5 40 40 100 PCB 40 37 92.5 40 39 97.5 Tiền 40 35 87.5 40 38 95 Vật thể lạ 40 40 40 40 100 100 Bảng 4.1.1.2: Kết nhận dạng ảnh với cảnh đơn giản Trong trường hợp thử nghiệm với cảnh đơn giản, đặc trưng vật thể xuất nhiều (do diện tích xuất vật thể ảnh chiếm phần lớn) Hơn đặc trưng hỗn tạp không xuất nhiều (do cảnh đơn giản) nên histogram đặc trưng sau tạo tương tự giống với histogram tạo lúc huấn luyện Chính khả nhận dạng vật thể trường hợp cao 75 4.1.2 Kết nhận dạng đổi với camera video Nhận dạng ảnh vói cảnh phức tạp Hình 4.1.1.3: Nhận dạng video với cảnh phức tạp A Vật thể không bị che; B Vật thể bị che 76 Kết nhận dạng nơi có cảnh phức tạp bảng sau: Vật thể bị che Tông thời gian xuất Tung thời gian phát hiện Con Cọp 20p 7p Hộp Sữa 20p PCB Tiền Vật thể lạ Vật thể không bị che Tũng thời gian xuất hiên a Tùng thời gian phát 35 — 20p 8p 40 7.5p 37.5 20p 7.5p 37.5 20p 5.5p 27.5 20p 6p 30 20p 5p 25 20p 6p 30 20p 20p 100 20p 20p 100 % — % Bảng 4.1.1.3: Kết nhận dạng camera với cảnh phức tạp Tương tự với trường hợp nhận dạng ảnh với cảnh phức tạp, ảnh cần truy vấn chứa nhiều đặc trưng hỗn tạp nên gây tượng nhận dạng sai nhiều Trong trường hợp nhận dạng camera frame lấy từ camera giống ảnh thông thường Nên nhận dạng camera cho kết không khác biệt nhiều so với nhận dạng ảnh 77 Nhận dạng ảnh vói cảnh đơn giản A B Hình 4.1.1.4: Nhận dạng camera với cảnh đơn giản A Vật thể không bị che; B Vật thể bị che 78 Kết nhận dạng nơi có cảnh đơn giản bảng sau: Vật thể bị che Tông thời gian xuất Tung thời gian phát hiện Con Cọp 20p 15.5p Hộp Sữa 20p PCB Tiền Vật thể lạ Vật thể không bị che Tũng thời gian xuất Tùng thời gian phát hiện 77.5 20p 18p 90 lóp 80 20p 19p 95 20p 15.5p 77.5 20p 18p 90 20p 15p 75 20p 17p 85 20p 20p 100 20p 20p 100 % % Bảng 4.1.1.4: Kết nhận dạng camera với cảnh đơn giản Cũng giống trường hợp nhận dạng với cảnh phức tạp camera, frame nhận từ camera giống ảnh thông thường Vì vậy, trường hợp nhận dạng này, frame nhận chứa có histogram mà tương tự histogram đem huấn luyện Nên khả nhận dạng trường họp cao 4.2 Đánh giá: 4.2.1 Đánh giá độ xác hệ thống Đựa kết thử nghiệm bảng cho thấy hệ thống nhận dạng vật thể tốt trường hợp cảnh vật không phức tạp Kết nhận dạng trường hợp đạt mức độ 90% Nếu trường hợp cảnh vật không phức tạp mà vật bị che khuất kết nhận dạng đạt mức 80% Như vậy, 79 thấy hệ thống nhận dạng tốt với trường hợp cảnh không phức tạp Đối với trường hợp vật thể xuất nơi có cảnh vật phức tạp, khả nhận dạng hệ thống có phần suy giảm Tuy nhiên, vật thể bị nhận dạng sai trường hợp Khả nhận dạng hệ thống hai trường hợp vật thể bị che không bị che khoảng 30% Như vậy, hệ thống nhận dạng trường hợp không tốt cần có nhiều cải thiện trường hợp Hệ thống giảm thiểu khả nhận dạng sai trường hợp vật thể lạ vật thể không xuất Hầu trường hợp vật thể bị nhận dạng sai gần 1% Vật thể bị che khuất hay chụp nhiều góc chụp khác ảnh hưởng không nhiều tới khả nhận dạng hệ thống Đối với trường hợp mà vật thể bị thu hẹp diện tích nhìn thấy tờ tiền đặt song song với mặt đất nhìn vào từ hướng song song mặt đất, hay nhìn từ trcn xuống từ lên hộp sữa, hệ thống khó nhận dạng trường hợp Trong trường hợp khả nhận dạng hệ thống Hệ thống nhạy cảm với điều kiện ánh sáng Khi nhận dạng điều kiện ánh sáng tối, hệ thống nhận dạng Tuy nhiên, ánh sáng không tối mà mắt thường nhìn rõ vật thể hệ thống có khả nhận dạng 4.2.2 Đánh giá thời gian nhận dạng hệ thống Đối với nhận dạng ảnh hệ thống nhận dạng tương đối nhanh Với ảnh full-HD, hệ thống nhận dạng phút Còn ảnh cỡ nhỏ khác hệ thống nhận dạng nhanh, thời gian diễn vài giây Khi nhận dạng camera kết nối với máy tính, hệ thống nhận dạng tương đối chậm Mặc dù độ phân giải video nhỏ khoảng 300x400, khung hình qt ttên hình khơng đủ nhanh để mắt thường không phân biệt 80 Tương tự với nhận dạng video, hệ thống tính tốn cho khung hình chậm nên khung hình khơng thể qt nhanh Đây vấn đề cần giải để cải thiện 4.2.3 Đánh giá thời gian huấn luyện xây dựng hệ thống Hệ thống có vài cơng đoạn tốn nhiều thời gian để thực Hai bước mà tốn nhiều thời gian để thực tạo sở liệu chia cụm K-Means Đối với công đoạn tạo sở liệu, ảnh vật thể thu thập thủ công Hầu hết ảnh Ương sở liệu chọn lọc cho vật thể định tự chụp cho vật thể nhiều trường hợp khác Vì thế, cơng đoạn tạo sở liệu tốn thời gian Trung bình thời gian để tạo sở liệu thực tác giả khoảng tuần Trong trình tạo từ điển, có nhiều đặc trưng mà số lượng từ mức 2500 từ nên hệ thống phải qua nhiều phép tốn tính tâm cụm Vì vậy, hệ thống phải nhiều thời gian cho công đoạn tạo từ điển Trung bình thời gian để tạo từ điển khoảng 10 Như vậy, thấy cơng để tạo hệ thống theo phương pháp tương đối thời gian Đây bất lợi phương pháp cần cải thiện điểm 81 CHƯƠNG 5: KÉT LUẬN VÀ KIÉN NGHỊ Từ kết kiểm chứng đánh giá Chương 4, chương trình bày kết luận, đồng thời đưa ưu điểm nhược điểm nghiên cứu, nêu lên hạn chế, qua đề xuất hướng mở rộng kiến nghị đội phát triển hệ thống ... ngành: Kỹ Thuật Điện Tử Mã số: 60 52 02 03 I TÊN ĐỀ TÀI: NHẬN DẠNG VẬT THỂ SỬ DỤNG GIẢI THUẬT SIFT VÀ BỘ TỪ ĐIỂN TRỰC QUAN II NHIỆM VỤ VÀ NỘI DUNG: Tìm hiểu phương pháp nhận dạng vật thể Bag... 3.7.3.5: Nhận dạng với vật thể “Con Vịt” 53 Hình 3.7.3.Ĩ: Nhận dạng với vật thể “Chai Nước” 53 Hình 3.7.3.7: Nhận dạng với vật thể “Xe Hơi” 54 Hình 3.7.3.8: Nhận dạng với vật thể. .. 3.7.3.16: Nhận dạng với vật thể “Con Cọp” 62 Hình 3.7.3.17: Nhận dạng với vật thể “Hộp Sữa” 63 Hình 3.7.3.18: Nhận dạng với vật thể “PCB” 63 Hình 3.7.3.19: Nhận dạng với vật thể