Áp dụng thuật toán SURF và SVM trong việc xây dựng ứng dụng quản lý dinh dưỡng dưa trên nền tảng android

67 1.5K 1
Áp dụng thuật toán SURF và SVM trong việc xây dựng ứng dụng quản lý dinh dưỡng dưa trên nền tảng android

Đ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

ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC NHẬN XÉT, ĐÁNH GIÁ, CHO ĐIỂM (Của Giáo viên hướng dẫn) Điểm: Đồng ý/ Không đồng ý cho sinh viên bảo vệ trước hội đồng chấm đồ án tốt nghiệp? Hà Nội, ngày tháng năm 2015 GIÁO VIÊN HƯỚNG DẪN (Ký, họ tên) GVHD: TS NGÔ QUỐC DŨNG HOÀNG VĂN CÔNG – D11CNPM4 i ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC NHẬN XÉT, ĐÁNH GIÁ, CHO ĐIỂM (Của Giáo viên phản biện) Điểm: Đồng ý/ Không đồng ý cho sinh viên bảo vệ trước hội đồng chấm đồ án tốt nghiệp? Hà Nội, ngày tháng năm 2015 GIÁO VIÊN HƯỚNG DẪN (Ký, họ tên) GVHD: TS NGÔ QUỐC DŨNG HOÀNG VĂN CÔNG – D11CNPM4 ii ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC LỜI CẢM ƠN Đầu tiên, em xin chân thành cảm ơn đến khoa Công nghệ thông tin 1, Học viện công nghệ bưu chính viễn thông đã tạo điều kiện tốt nhất cho em thực hiện đề tài tốt nghiệp Em xin gửi lời cảm ơn đến các thầy cô giáo trong khoa đã truyền đạt và dạy bảo cho em rất nhiều kiến thức hay và bổ ích cho cuộc sống trong suốt quá trình 4 năm học tập tại học viện Em chân thành cảm ơn thầy cô đã trang bị cho em hành trang để em đầy đủ tự tin bước trên con đường sau này Đặc biệt, em xin dành lời cảm ơn sâu sắc nhất tới thầy Ngô Quốc Dũng Thầy đã tận tình, chỉ bảo em trong suốt quá trình học tập, và dành thời gian xem xét, sửa đổi, góp ý cho em hoàn thiện đồ án tốt nghiệp được tốt nhất Xin chân thành cảm ơn những người thân trong gia đình, cùng các anh chị em, bạn bè đã giúp đỡ, động viên mình trong quá trình thực hiện và hoàn thành luận văn này Em xin chân thành cảm ơn! Hà Nội, tháng 12 năm 2015 Sinh viên Hoàng Văn Công GVHD: TS NGÔ QUỐC DŨNG HOÀNG VĂN CÔNG – D11CNPM4 iii ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC MỤC LỤC LỜI CẢM ƠN iii CHƯƠNG I: PHÁT BIỂU BÀI TOÁN 1 1.1 Đặt vấn đề 1 1.2 Bài toán đặt ra 2 1.3 Tổng quan về ứng dụng 2 1.4 Kết luận .3 CHƯƠNG II: PHƯƠNG PHÁP ĐỀ XUẤT 4 2.1 Đặt vấn đề 4 2.1.1 Một số nghiên cứu trước đây 4 2.2 Một số phương pháp trích chọn đặc trưng và đo độ tương đồng giữa các ảnh 8 2.2.1 Harris 8 2.2.2 SIFT( Scale Invarian Feature Transform) 9 2.2.3 SURF( Speed Up Robust Feature) .11 2.3 Các phương pháp phân loại ảnh .19 2.3.1 Tổng quan 19 2.3.2 Phương pháp K-Means 19 2.3.3 Phương pháp K-Nearest Neighbor(KNN) 20 2.3.4 Phương pháp Support Vector Machine(SVM) 20 2.4 Phương pháp đề xuất .23 2.4.1 Các bước cơ bản 24 2.5 Kết luận .27 CHƯƠNG III: PHÂN TÍCH THIẾT KẾ HỆ THỐNG 28 3.1 Xác định yêu cầu .28 3.1.1 Yêu cầu xây dựng bài toán 28 3.1.2 Mô tả hệ thống 28 3.1.3 Các tác nhân của hệ thống 28 3.1.4 Danh sách các UseCase 29 3.1.5 Sơ đồ UseCase tổng quát 30 3.1.6 Một số kịch bản cho UseCase 31 3.1.7 Giao diện của ứng dụng .34 3.2 Phân tích yêu cầu 38 3.2.1 Phân tích tĩnh .38 CHƯƠNG IV: THỬ NGHIỆM VÀ ĐÁNH GIÁ 47 4.1 Xây dựng bộ dữ liệu 47 GVHD: TS NGÔ QUỐC DŨNG HOÀNG VĂN CÔNG – D11CNPM4 iv ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC 4.1.1 So sánh giữa các thuật toán trích chọn đặc trưng .47 4.1.2 Xây dựng bộ dữ liệu đánh giá độ chính xác của thuật toán SURF 48 4.1.3 Xây dựng bộ dữ liệu của ứng dụng 48 4.2 Những vấn đề gặp phải .55 4.3 Kết luận .56 CHƯƠNG V: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 57 Tài liệu tham khảo 58 GVHD: TS NGÔ QUỐC DŨNG HOÀNG VĂN CÔNG – D11CNPM4 v ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC DANH MỤC HÌNH VẼ LỜI CẢM ƠN iii CHƯƠNG I: PHÁT BIỂU BÀI TOÁN 1 1.1 Đặt vấn đề 1 1.2 Bài toán đặt ra 2 1.3 Tổng quan về ứng dụng 2 1.4 Kết luận .3 CHƯƠNG II: PHƯƠNG PHÁP ĐỀ XUẤT 4 2.1 Đặt vấn đề 4 2.1.1 Một số nghiên cứu trước đây 4 2.2 Một số phương pháp trích chọn đặc trưng và đo độ tương đồng giữa các ảnh 8 2.2.1 Harris 8 2.2.2 SIFT( Scale Invarian Feature Transform) 9 2.2.3 SURF( Speed Up Robust Feature) .11 2.3 Các phương pháp phân loại ảnh .19 2.3.1 Tổng quan 19 2.3.2 Phương pháp K-Means 19 2.3.3 Phương pháp K-Nearest Neighbor(KNN) 20 2.3.4 Phương pháp Support Vector Machine(SVM) 20 2.4 Phương pháp đề xuất .23 2.4.1 Các bước cơ bản 24 2.5 Kết luận .27 CHƯƠNG III: PHÂN TÍCH THIẾT KẾ HỆ THỐNG 28 3.1 Xác định yêu cầu .28 3.1.1 Yêu cầu xây dựng bài toán 28 3.1.2 Mô tả hệ thống 28 3.1.3 Các tác nhân của hệ thống 28 3.1.4 Danh sách các UseCase 29 3.1.5 Sơ đồ UseCase tổng quát 30 3.1.6 Một số kịch bản cho UseCase 31 3.1.7 Giao diện của ứng dụng .34 3.2 Phân tích yêu cầu 38 3.2.1 Phân tích tĩnh .38 CHƯƠNG IV: THỬ NGHIỆM VÀ ĐÁNH GIÁ 47 GVHD: TS NGÔ QUỐC DŨNG HOÀNG VĂN CÔNG – D11CNPM4 vi ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC 4.1 Xây dựng bộ dữ liệu 47 4.1.1 So sánh giữa các thuật toán trích chọn đặc trưng .47 4.1.2 Xây dựng bộ dữ liệu đánh giá độ chính xác của thuật toán SURF 48 4.1.3 Xây dựng bộ dữ liệu của ứng dụng 48 4.2 Những vấn đề gặp phải .55 4.3 Kết luận .56 CHƯƠNG V: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 57 Tài liệu tham khảo 58 GVHD: TS NGÔ QUỐC DŨNG HOÀNG VĂN CÔNG – D11CNPM4 vii ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC CHƯƠNG I: PHÁT BIỂU BÀI TOÁN Trong chương này, đồ án sẽ trình bày các phần sau đây: 1.1 Đặt vấn đề 1.2 Bài toán đặt ra 1.3 Tổng quan ứng dụng 1.4 Kết luận 1.1 Đặt vấn đề Trong những năm gần đây, thói quen ghi lại giá trị dinh dưỡng của thực phẩm bằng điện thoại thông minh như iPhone và Android đã trở nên phổ biến Chúng có thể theo dõi thói quen ăn uống của người sử dụng như cân bằng dinh dưỡng và loại bỏ những thực phẩm không lành mạnh , đó là công việc cần thiết để phòng bệnh và có một chế độ ăn uống hợp lý Tuy nhiên, hầu hết các dịch vụ này đòi hỏi phải ghi lại thông tin thức ăn bằng tay, việc này khá tốn thời gian và phiền phức cho những người sử dụng dịch vụ lâu dài Với sự phát triển nhanh chóng của điện thoại thông minh hiện này như iPhone và Android, chúng đã đủ sức mạnh để, ghi nhận hình ảnh thời gian thực Hiện nay, CPU của điện thoại thông minh gần như tương đương với CPU của máy tính phát hành cách đây vài năm về hiệu suất Hệ thống điện thoại di động thế hệ cũ với hình ảnh ghi nhận cần gửi hình ảnh đến máy chủ hiệu suất cao, gây ra sự chậm trễ truyền tải, đòi hỏi chi phí đường truyền , và sự phụ thuộc vào mạng truyền tải Ngoài ra, theo tỷ lệ số lượng người dùng tăng, nhiều tài nguyên máy tính của máy chủ là cần thiết, gây ra sự khó khăn trong việc nhận ra các đối tượng trong một thời gian thực Do đó việc nhận dạng thời gian thực là một yêu cầu cần thiết trong công nghệ hiện nay Mặt khác, điện thoại thông minh nhận dạng hình ảnh có nhiều ưu điểm về tiện lợi và chi phí Bằng cách tận dụng sức mạnh tính toán mạnh mẽ của các smartphone cũng như kỹ thuật nhận dạng đối tượng được cải tiến, đồ án đề xuất một ứng dụng quản lý dinh dưỡng có chứa hệ thống nhận dạng thực phẩm thời gian thực chạy trên điện thoại thông minh với hệ điều hành Android GVHD: TS NGÔ QUỐC DŨNG HOÀNG VĂN CÔNG – D11CNPM4 1 ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC 1.2 Bài toán đặt ra Hầu hết các ứng dụng quản lý dinh dưỡng trước đây đều yêu cầu phải lựa chọn các thức ăn bằng tay, nó tốn quá nhiều thời gian và phiền phức cho những người sử dụng trong một thời gian dài Việc người dùng phải ghi lại thông tin món ăn gây ra nhiều bất tiện, vì họ không thể biết chính xác lượng dinh dưỡng mà họ đã nhập vào với món ăn đó Trước khó khăn này, luận văn xây dựng một ứng dụng nhằm giải quyết vấn đề trên Thao tác của người dùng rất đơn giản, họ chỉ việc chụp ảnh món ăn, các thao tác còn lại như tính toán và quản lý lượng dinh dưỡng của món ăn sẽ do ứng dụng đảm nhiệm Với những lý do trên, em xây dựng đồ án với nội dung là: “Áp dụng thuật toán SURF và SVM trong việc xây dựng ứng dụng quản lý dinh dưỡng dưa trên nền tảng Android” 1.3 Tổng quan về ứng dụng Ứng dụng sẽ tính toán lượng dinh dưỡng hợp lý cho mỗi người dùng dựa trên thông tin mà người dùng nhập vào Các thông tin này bao gồm: • Cân nặng(kg) • Chiều cao(tuổi) • Thời gian ngồi mỗi ngủ(tiếng) • Thời gian ngủ mỗi ngày(tiếng) • Thời gian tập thể thao mỗi ngày(tiếng) • Giới tính(Con trai/Con gái) • Mục tiêu muốn đạt được của người dùng(Bình thường/Ăn kiêng/Tập thể hình) Người dùng có thể cập nhật lại thông tin để hệ thống tính toán lại lượng dinh dưỡng cần thiết Trong phạm vi đồ án này, ứng dụng chứa 15 món ăn Việt Nam mà hệ thống có thể nhận dạng được bằng cách chụp lại món ăn này Nếu người dùng biết rõ thông tin dinh dưỡng về món ăn, họ có thể cập nhật thông tin món ăn vào database Ứng dụng ghi lại thông tin về những món mà người dùng đã ăn GVHD: TS NGÔ QUỐC DŨNG HOÀNG VĂN CÔNG – D11CNPM4 2 ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Đưa ra lời khuyên về món ăn với người sử dụng Ứng dụng đưa ra thông tin về các món ăn khá phong phú Một số tiện ích khác như ghi lại số cân nặng, hay nhật kí để sau người dùng xem lại… Các bước cơ bản để nhận diện món ăn: • Người sử dụng dùng điện thoại thông minh ghi lại món ăn trước khi lựa chọn Hệ thống liên tục nhận lại khung hình ảnh từ điện thoại ở chế độ nền • Người sử dụng kéo một khung giới hạn với mặt hàng thực phẩm trên màn hình điện thoại Người sử dụng có thể điều chỉnh khung giới hạn cho phù hợp với món ăn • Nhận dạng thực phẩm được thực hiện tại vùng trong khung giới hạn • Hệ thống đưa ra tên món ăn nhận dạng được cũng như lượng dinh dưỡng mà món ăn này chứa • Người dùng có thể chọn món ăn này nếu như kết quả là chính xác, hoặc có thể quay lại bước trước để nhận dạng lại nếu thấy thông tin chưa hoàn toàn chính xác • Người dùng nhập khối lượng món ăn 1.4 Kết luận Trong chương này, đồ án đã trình bày tính cấp thiết cần phải có một ứng dụng quản lý dinh dưỡng và các điểm yếu của các ứng dụng đã có Từ đó mục tiêu đồ án là nhắm đến là xây dựng một ứng dụng trên nền tảng android nhằm quản lý chế độ dinh dưỡng cho người sử dụng Để nâng cao tính tương tác giữa ứng dụng và người sử dụng, đồ án sẽ nhắm đến một ứng dụng thời gian thực với độ chính xác cao Trước khi giới thiệu chi tiết ứng dụng, đồ án sẽ giới thiệu một cách tổng quan các kỹ thuật và phương pháp tồn tại cùng với các điểm yếu và mạnh của chúng trong chương tiếp theo GVHD: TS NGÔ QUỐC DŨNG HOÀNG VĂN CÔNG – D11CNPM4 3 ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Hình 3.11 Biểu đồ tuần tự của chức năng Thêm món ăn bằng tay Thêm món ăn bằng ảnh Hình 3.12 Biểu đồ tuần tự của chức năng Thêm món ăn bằng ảnh GVHD: TS NGÔ QUỐC DŨNG HOÀNG VĂN CÔNG – D11CNPM4 46 ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC CHƯƠNG IV: THỬ NGHIỆM VÀ ĐÁNH GIÁ Trong chương này, đề tài sẽ trình bày các phần sau đây: 4.1 Xây dựng bộ dữ liệu 4.2 Những vấn đề gặp phải 4.3 Kết luận 4.1 Xây dựng bộ dữ liệu 4.1.1 So sánh giữa các thuật toán trích chọn đặc trưng Cách chọn phương pháp nhằm rút ra những đặc trưng bất biến của ảnh là hết sức quan trọng Nó không chỉ ảnh hưởng tới tính chính xác của chương trình mà còn ảnh hưởng tới hiệu xuất nữa Chính vì lẽ đó em đã thực nghiệm trên một số phương pháp, nhằm đưa ra cách chọn phương pháp sao cho hiệu quả Sau đây là một số kết quả đã so sánh hiệu quả của các thuật toán Phương pháp Kết quả Thời gian(giây) SURF 38173 4 SIFT 40907 5 Hessian-Laplace 30524 3 Từ bảng kết quả, phương pháp Hessian-Laplace tuy thời gian thực hiện là nhanh nhất nhưng số lượng điểm ảnh rút ra được lại thấp hơn hết Điều này ảnh hưởng không nhỏ tới tính chính xác của chương trình, còn về hai phương pháp còn lại, SIFT tuy có kết quả nhanh hơn SURF nhưng lại thời gian thực hiện lại chậm hơn, ảnh hưởng đến sự tương tác của ứng dụng với người dùng Với những điều này em nhận thấy là khả thi và quyết định chọn SURF làm phương pháp rút ra đặc trưng ảnh cho chương trình GVHD: TS NGÔ QUỐC DŨNG HOÀNG VĂN CÔNG – D11CNPM4 47 ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC 4.1.2 Xây dựng bộ dữ liệu đánh giá độ chính xác của thuật toán SURF Kiểm tra với bộ dữ liệu att_faces Bộ dữ liệu gồm 40 phần, trong mỗi phần gồm 10 ảnh chụp ở các góc độ khác nhau Ảnh test phải đảm bảo khác với ảnh đầu vào Số lượng ảnh đầu vào bắt đầu từ 1 đến 7 Input 1 2 3 4 5 6 7 Test 3 3 5 5 5 4 3 Tỉ lệ 60.25 % 72.6 83.2 % 91.5 % 92 % 93 % 93 % 4.1.3 Xây dựng bộ dữ liệu của ứng dụng Trong phạm vi đồ án, em xây dựng bộ dữ liệu gồm15 món ăn quen thuộc với người dân Việt Nam • Gà quay GVHD: TS NGÔ QUỐC DŨNG HOÀNG VĂN CÔNG – D11CNPM4 48 ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC • Thịt lợn nướng • Bánh trung thu • Quẩy • Tôm • Nem rán • Khoai tây chiên • Phở bò • Đậu rán • Cá rán • Trứng luộc • Rau muống xào • Chuối • Quả táo • Bánh mỳ Ví dụ về món ăn: Tến món ăn GVHD: TS NGÔ QUỐC DŨNG Hình ảnh HOÀNG VĂN CÔNG – D11CNPM4 49 ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Gà quay Thịt xiên nướng Bánh trung thu Quẩy Tôm Nem rán Khoai tây chiên GVHD: TS NGÔ QUỐC DŨNG HOÀNG VĂN CÔNG – D11CNPM4 50 ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Phở bò Đậu rán Cá rán Trứng luộc Rau muống xào Chuối GVHD: TS NGÔ QUỐC DŨNG HOÀNG VĂN CÔNG – D11CNPM4 51 ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Táo Bánh mỳ Xây dựng 15 bộ dữ liệu cho 15 món ăn, mỗi bộ gồm 60 ảnh; trong đó có 50 ảnh để huấn luyện và 10 ảnh để kiểm tra Kích thước ảnh của mỗi ảnh trong bộ dữ liệu là 100*250 Mỗi bộ dữ liệu được gán một nhãn cố định để xử lý và nhận dạng Trong đó: 1-Thịt gà, 2- Thịt lợn nướng, 3- Bánh trung thu, 4-Quẩy, 5-Tôm, 6-Nem rán, 7Khoai tây chiên, 8-Phở bò, 9-Đậu rán, 10-Cá rán, 11-Trứng luộc, 12-Rau muống, 13-Chuối, 14-Táo, 15-Bánh mỳ Phần huấn luyện: Khởi tạo biến: Mat descriptors, labelTraining, dataTraining, totalKeypoint, totalLabels, totalCentroid; Mat Centroid; FeatureDetector featureDetector; MatOfKeyPoint matOfKeyPoint; DescriptorExtractor descriptorExtractor; CvSVM svm; Điều chỉnh lại kích thước của ảnh về 100*250: Imgproc.resize(image,image,new Size(100,250)); Tìm ra và mô tả điểm đặc trưng của tất cả các ảnh: featureDetector.detect(image, matOfKeyPoint); descriptorExtractor.compute(image, matOfKeyPoint, descriptors); int total = descriptors.rows() * descriptors.cols(); totalKeypoint.push_back(descriptors); GVHD: TS NGÔ QUỐC DŨNG HOÀNG VĂN CÔNG – D11CNPM4 52 ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Phân cụm tất cả các điểm đặc trưng dựa vào nhóm dựa vào thuật toán KMeans Core.kmeans(totalKeypoint,30,totalLabel,new TermCriteria(TermCriteria.EPS,MAX_ITER,1e5),3,Core.KMEANS_PP_CENTERS,totalCentroid); Ghi lại tâm của các nhóm để sử dụng bên phần nhận dạng: writeBOW(Centroid,“SURF.DAT”) Gán nhãn cho mỗi nhóm, nhãn chính là tên thư mục chứa món ăn for (int i = 0; i < listFile.length; i++) { String path = listFile[i].getAbsolutePath(); int[] histogram = processImage(path); Mat tempMat = new Mat(1, histogram.length, CvType.CV_32FC1); for (int j = 0; j < histogram.length; j++) { tempMat.put(0, j, histogram[j]); } Mat tempLabel = new Mat(1, 1, CvType.CV_32FC1); tempLabel.put(0, 0, label); labelTraining.push_back(tempLabel); dataTraining.push_back(tempMat); } Tính tần xuất xuất hiện: for (int i = 0; i < descriptors.rows(); i++) { Mat row = descriptors.row(i); int index = calculateDistance(row, Centroid); histogram[index] = histogram[index] + 1; } Sử dụng SVM xây dựng bộ huấn luyện lưu dưới file xml để sử dụng bên phần nhận dạng svm = new CvSVM(); svm.train(dataTraining, labelTraining, new Mat(), new Mat(), params); svm.save("xml//test.xml"); Cấu trúc file xml nhận được: GVHD: TS NGÔ QUỐC DŨNG HOÀNG VĂN CÔNG – D11CNPM4 53 ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Phần nhận dạng: Gọi ra 2 file SURF.DAT và test.xml để sử dụng totalCentroid=loadBOW(“SURF.DAT”); svm.load(“xml//test.xml”); Thực hiện các thao tác tương tự như với phần huấn luyện nhưng với tập ảnh nhận dạng Xác định nhãn của ảnh nhận dạng: int[] histogram = processImage(path); Mat tempMat = new Mat(1, histogram.length, CvType.CV_32FC1); for (int i = 0; i < histogram.length; i++) { tempMat.put(0, i, histogram[i]); } result = svm.predict(tempMat); Kết quả result là nhãn của ảnh cần nhận dạng Kết quả: GVHD: TS NGÔ QUỐC DŨNG HOÀNG VĂN CÔNG – D11CNPM4 54 ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Tỉ lệ nhận dạng chính xác: 128/150(85,33%) 4.2 Những vấn đề gặp phải Xây dựng bộ dữ liệu huấn luyện Khác với món ăn nước ngoài, món ăn Việt Nam thường là sự pha trộn của nhiều loại thực phẩm Sự đa dạng của món ăn Ví dụ cùng món bò xào giá, tùy từng nơi mà tỉ lệ của bò và giá khác nhau, dẫn đến lượng dinh dưỡng cũng khác nhau Món ăn của Việt Nam rất đa dạng, dẫn tới khó khăn trong việc cập nhật món ăn cho ứng dụng Bộ dữ liệu trong đồ án chưa phong phú Chưa xác định được khối lượng món ăn, người dùng vẫn phải nhập khối lượng món ăn, gây ra một số bất tiện GVHD: TS NGÔ QUỐC DŨNG HOÀNG VĂN CÔNG – D11CNPM4 55 ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC 4.3 Kết luận Tìm ra các điểm đặc trưng bất biến là một vấn đề quan trọng trong nhận dạng, vì các đặc trưng bất biến với các yếu tố như co dãn, ánh sang, góc nhìn,… giúp việc nhận dạng tăng độ chính xác Có một số phương pháp tìm ra các đặc trưng bất biến như Hessian Laplace, SIFT, SURF Không có phương pháp nào tối ưu, mỗi phương pháp đều có ưu nhược điểm riêng của riêng mình Phương pháp Hessian Laplace nhanh nhưng tìm được ít keypoint nên độ chính xác không cao, phương pháp SIFT có độ chính xác cao nhưng thời gian thực hiện khá lâu, ảnh hưởng đến thời gian nhận dạng Trong phạm vi đồ án, em thấy phương pháp SURF vừa đảm bảo được độ chính xác, vừa đảm bảo được thời gian xử lý Sau khi chích trọn được đặc trưng, bước tìm theo là phân loại ảnh Có nhiều phương pháp phân loại ảnh, trong đó phương pháp SVM khá hiệu quả vì SVM có ưu điểm với các thuật toán khác như KNN, NB, tất cả dữ liệu trong tập huấn luyện đều được dùng để tối ưu hóa kết quả GVHD: TS NGÔ QUỐC DŨNG HOÀNG VĂN CÔNG – D11CNPM4 56 ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC CHƯƠNG V: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN Trong những năm gần đây, thói quen ghi lại giá trị dinh dưỡng của thực phẩm bằng điện thoại thông minh như iPhone và Android đã trở nên phổ biến Chúng có thể theo dõi thói quen ăn uống của người sử dụng như cân bằng dinh dưỡng và loại bỏ những thực phẩm không lành mạnh , đó là công việc cần thiết để phòng bệnh và có một chế độ ăn uống hợp lý Tuy nhiên, hầu hết các dịch vụ này đòi hỏi phải ghi lại thông tin thức ăn bằng tay, việc này khá tốn thời gian và phiền phức cho những người sử dụng dịch vụ lâu dài Đồ án đã nghiên cứu việc ứng dụng các phương pháp trích chọn đặc trưng và phân loại ảnh nhằm giải quyết bài toán xây dựng ứng dụng quản lý dinh dưỡng cho người dùng trên nền tảng Android Cụ thể, đồ án đã thực hiện được các nội dung sau: • Nghiên cứu các thuật toán khác nhau trong việc chích trọn đặc trưng và phân loại ảnh Tìm hiểu những điểm mạnh, yếu của các thuật toán này Đề xuất phương pháp • Xây dựng ứng dụng quản lý dinh dưỡng dựa vào thuật toán SURF và SVM • Phân tích yêu cầu và thiết kế ứng dụng • Xây dựng bộ dữ liệu với những món ăn quen thuộc người Việt Nam Tuy nhiên vẫn còn một số vấn đề mà đồ án chưa giải quyết được: • Chưa tự động xác định được khối lượng món ăn do người dùng chụp lại • Bộ dữ liệu chưa phong phú • Gặp khó khăn với những món ăn là sự pha trộn của nhiều loại thực phẩm Hướng phát triển của đồ án tập trung cải thiện độ chính xác khi nhận dạng món ăn, tính được khối lượng và giải quyết những vấn đề khó khăn với những món ăn phức tạp GVHD: TS NGÔ QUỐC DŨNG HOÀNG VĂN CÔNG – D11CNPM4 57 ĐỒ ÁN TỐT NGHIỆP ĐẠI HỌC Tài liệu tham khảo Tài liệu tiếng Anh [1] Beyond Bags of Features: Spatial Pyramid Matching for Recognizing Natural Scene Categories của đồng tác giả Svetlana Lazebnik, Cordelia Schmid, Jean Ponce Được phát hành vào 08-2009 [2] Boosting Image Classification with LDA-based Feature Combination for Digital Photograph Management của đồng tác giả Xuezheng Liu, Lei Zhang, Mingjing Li, Hongjiang Zhang, Dingxing Wang Được phát hành vào 07-2008 [3] Unsupervised real-time constrained linear discriminant analysis to hyperspectral image classification của tác giả Qian Du Được phát hành vào 082006 [4] Object Recognitionusing Local Descriptors của tác giả Javier Ruiz và Patricio Loncomila thuộc trung tâm nghiên cứu khoa học Chile Được phát hành vào 12-2004 [5] Object Recognition from Local Scale-Invariant Features của tác giả David G Lowe, thuộc khoa khoa học máy tính, trường đại học British Columbia Được phát hành vào năm 2005 [6] Texture classification of aerial image based on bayesian network augmanted naïve bayes của đồng tác giả YU Xin, ZHENG Zhaobao, ZHANG Haitao, YE Zhiwei Được phát hành vào tháng 3 năm 2008 [7] Speeded-up Robust Features (SURF), Herbert Bay, Andreas Ess, Tinne Tuytelaars, Luc Van Gool Được phát hành vào tháng 12 năm 2007 [8] Recognizing Indoor Scenes của tác giả Ariadna Quattoni, Antonio Torralba Được phát hành vào tháng 1 năm 2004 Tài liệu tiếng Việt [9] Phương pháp trích chọn đặc trưng ảnh trong thuật toán học máy tìm kiếm ảnh áp dụng vào bài toán tìm kiếm sản phẩm [10] Nghiên cứu phương pháp kết hợp các đặc trưng màu sắc hình dạng và vị trí để truy vấn ảnh, luận văn thạc sĩ của tác giả Trần Sơn Hải, năm 2007 GVHD: TS NGÔ QUỐC DŨNG HOÀNG VĂN CÔNG – D11CNPM4 58 ... họ việc chụp ảnh ăn, thao tác cịn lại tính tốn quản lý lượng dinh dưỡng ăn ứng dụng đảm nhiệm Với lý trên, em xây dựng đồ án với nội dung là: ? ?Áp dụng thuật toán SURF SVM việc xây dựng ứng dụng. .. luận Trong chương này, đồ án trình bày tính cấp thiết cần phải có ứng dụng quản lý dinh dưỡng điểm yếu ứng dụng có Từ mục tiêu đồ án nhắm đến xây dựng ứng dụng tảng android nhằm quản lý chế độ dinh. .. đồ án xây dựng ứng dụng quản lý dinh dưỡng với thao tác chụp ảnh để xác định thơng tin ăn, quản lý dinh dưỡng cho người sử dụng 3.1.2 Mô tả hệ thống Ứng dụng tính tốn lượng dinh dưỡng hợp lý cho

Ngày đăng: 20/04/2017, 23:03

Từ khóa liên quan

Mục lục

  • LỜI CẢM ƠN

  • CHƯƠNG I: PHÁT BIỂU BÀI TOÁN

    • 1.1 Đặt vấn đề

    • 1.2 Bài toán đặt ra

    • 1.3 Tổng quan về ứng dụng

    • 1.4 Kết luận

    • CHƯƠNG II: PHƯƠNG PHÁP ĐỀ XUẤT

      • 2.1 Đặt vấn đề

        • 2.1.1 Một số nghiên cứu trước đây

          • Các nghiên cứu đáng chú ý trên thế giới:

          • Các nghiên cứu đáng chú ý tại Việt Nam:

          • 2.2 Một số phương pháp trích chọn đặc trưng và đo độ tương đồng giữa các ảnh.

            • 2.2.1 Harris

            • 2.2.2 SIFT( Scale Invarian Feature Transform)

              • 2.2.2.1 Phát hiện cực trị

              • 2.2.2.2 Định vị chính xác điểm khóa

              • 2.2.2.3 Gán hướng cho các điểm khóa

              • 2.2.2.4 Xây dựng bộ mô tả cục bộ

              • 2.2.3 SURF( Speed Up Robust Feature)

                • 2.2.3.1 Ảnh tích hợp( integral image)

                • 2.2.3.2 Phát hiện Fast_Hessian

                • 2.2.3.3 Sự biểu diễn không gian tỷ lệ

                • 2.2.3.4 Định vị điểm quan tâm

                • 2.2.3.5 Bộ mô tả điểm quan tâm và so khớp

                • 2.3 Các phương pháp phân loại ảnh

                  • 2.3.1 Tổng quan

                  • 2.3.2 Phương pháp K-Means

                  • 2.3.3 Phương pháp K-Nearest Neighbor(KNN)

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

Tài liệu liên quan