1. Trang chủ
  2. » Luận Văn - Báo Cáo

Xây dựng hệ thống cảnh báo vật thể xâm nhập thời gian thực

54 0 0

Đ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ội dung

Đồ án cơ sở 4 AI Xây dựng hệ thống cảnh báo vật thể xâm nhập thời gian thực. Thực hiện bởi sinh viên Nguyễn Phạm Anh Vũ, Nguyễn Quốc Khánh sinh viên trường Đại học Công nghệ thông tin và Truyền thông Việt Hàn.

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG VIỆT HÀN Khoa Khoa Học Máy Tính ĐỒ ÁN CƠ SỞ XÂY DỰNG HỆ THỐNG CẢNH BÁO VẬT THỂ XÂM NHẬP THỜI GIAN THỰC Sinh viên thực hiện: NGUYỄN QUỐC KHÁNH Sinh viên thực hiện: NGUYỄN PHẠM ANH VŨ Lớp: 20SE3 Giảng viên hướng dẫn: PGS.TS Nguyễn Thanh Bình Đà Nẵng, tháng 11 năm 2022 TRƯỜNG ĐẠI HỌC CÔNG NGHỆ THÔNG TIN & TRUYỀN THÔNG VIỆT HÀN Khoa Khoa Học Máy Tính ĐỒ ÁN CƠ SỞ XÂY DỰNG HỆ THỐNG CẢNH BÁO VẬT THỂ XÂM NHẬP THỜI GIAN THỰC Sinh viên: NGUYỄN QUỐC KHÁNH Mã: 20IT905 Sinh viên: NGUYỄN PHẠM ANH VŨ Mã: 20IT135 Giảng viên hướng dẫn: PGS.TS Nguyễn Thanh Bình Đà Nẵng, tháng 11 năm 2022 2 NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… ………………………………………………………………………………………………… 3 LỜI CẢM ƠN Để có đồ án đạt kết tại, chúng em nhận hỗ trợ, giúp đỡ, bảo tận tâm thầy/cơ Với tình cảm sâu sắc, chân thành, cho phép chúng em bày tỏ lòng biết ơn sâu sắc đến tất quý thầy cô tạo điều kiện giúp đỡ em trình học tập nghiên cứu Trước hết, chúng em xin gửi tới đội ngũ giảng viên trường Đại học Công nghệ thông tin truyền thông Việt – Hàn lời chào trân trọng, lời chúc sức khỏe lời cảm ơn sâu sắc Với quan tâm, bảo tận tình chu đáo, vốn kiến thức nhiều lĩnh vực mình, đội ngũ giảng viên trường truyền tải cho chúng em nhiều kiến thức, kỹ cần thiết, để đến ngày hôm nay, chúng em hồn thành Đồ án sở Đặc biệt, chúng em xin gửi lời cảm ơn chân thành tới PGS.TS.Nguyễn Thanh Bình, giảng viên quan tâm, giúp đỡ, bảo tận tình để chúng em hồn thành tốt đồ án suốt thời gian vừa qua Với điều kiện thời gian kinh nghiệm hạn chế, đồ án khơng thể tránh thiếu sót Chúng em mong nhận bảo, đóng góp ý kiến thầy/cơ, để chúng em có điều kiện bổ sung, nâng cao kiến thức, kỹ mình, phục vụ tốt cho cơng tác thực tế sau Chúng em xin trân trọng cảm ơn! Sinh viên, Nguyễn Quốc Khánh Nguyễn Phạm Anh Vũ 4 5 MỤC LỤC 6 DANH MỤC CÁC TỪ VIẾT TẮT STT VIẾT TẮT NỘI DUNG AI Artificial Intelligence API Application Programming Interface CSDL Cơ sở liệu CPU Central Processing Unit GPU Graphic Processing Unit TPU Tensor Processing Unit CNN Convolutional Neural Networks R-CNN Binary Javascript Object Notation RPN Region Proposal Network 10 HOG Histogram of Oriented Gradient 11 NMS Non maximum suppression 12 RoI Region of Interest 13 GD Gradient Descent 14 SGD Stochastic Gradient Descent 15 NAG Nesterov accelerated Gradient Descent 16 SVM Support Vector Machine 17 SIFT Scale-Invariant Feature Transform 18 YOLO You only look once 7 DANH MỤC HÌNH ẢNH 8 MỞ ĐẦU Giới thiệu: Hiện nay, sống thời đại mà xã hội đề cao tầm quan trọng Khoa học, Kỹ thuật Công nghệ Và khoa học, cơng nghệ, kĩ thuật phát triển trí tuệ nhân tạo trí tuệ nhân tạo, học máy, học sâu, dần trở nên phổ biến Và cách mạng công nghiệp 4.0 len lỏi đến đời sống hàng ngày, khái niệm trở nên quen thuộc, ứng dụng nhiều sống, hứa hẹn ngành công nghiệp đầy tiềm phát triển vượt bậc ngành khoa học kỹ thuật nói chung, ngành cơng nghệ thơng tin nói riêng Với việc trí tuệ nhân tạo ứng dụng rộng rãi, toán trước tưởng bất khả thi nhận diện, phân loại, xử lý với loại liệu phức tạp âm thanh, tập liệu lớn… có phương pháp giải Một toán phổ biến lĩnh vực trí tuệ nhân tạo toán “Nhận diện vật thể thời gian thực (Object Detection Realtime)” Trước kia, với trở ngại mặt phần cứng mơ hình, thuật tốn tốn dường khơng mang tính thực tế Tuy nhiên, phần cứng dần cải thiện, thuật toán học máy phát triển, đặc biệt có mặt học sâu trở ngại dần có lời giải Với tính thiết thực đề tài, nhóm em chọn đề tài: “Xây dựng hệ thống cảnh báo vật thể xâm nhập thời gian thực” với mục đích nghiên cứu, tìm hiểu hồn thành hệ thống phát cảnh báo vật thể xâm nhập thời gian thực để nhận diện, cảnh báo đối tượng nguy hiểm, hay đối tượng cần bảo vệ vùng nguy hiểm định nghĩa Ngồi ra, đề tài cịn phương pháp để chúng em có thểứng dụng thuật tốn, mơ hình học mơn “Trí tuệ nhân tạo”, “Nhập mơn khoa học liệu” “Lập trình Python”, từ ứng dụng cho tốn khác lĩnh vực Trí tuệ nhân tạo Khoa học liệu Mục tiêu đề tài: Mục đích đề tài phát đối tượng nguy hiểm (như vũ khí, lửa, ), phát đối tượng xuất khu vực cần giám sát liên tục (ví dụ khu vực cấm người, đường ray) 9 10 10 Đầu vào Yolo ảnh, mơ hình nhận dạng ảnh có đối tượng hay khơng, sau xác định tọa độ đối tượng ảnh Ảnh đầu vào chia thành thành ô, thường ,, Việc chia ô ảnh hưởng tới việc mơ hình phát đối tượng Ý tưởng YOLO chia ảnh thành lưới ô (grid cell) với kích thước , mặc định Với grid cell, mơ hình đưa dự đốn cho B bounding box, Ứng với box B bounding box tham số x, y, w, h, confidence, tọa độ tâm (x, y), chiều rộng, chiều cao độ tự tin dự đốn Với grid cell lưới kia, mơ hình dự đoán xác suất rơi vào class Tuy nhiên, tâm bounding box nằm ô chứa đối tượng, cho dù đối tượng khác trả Vì việc mà chứa hay nhiều tâm bouding box hay đối tượng khơng thể detect được, hạn chế mơ hình YOLO, ta cần phải tăng số lượng chia ảnh lên Đó lí nói việc chia làm ảnh hưởng tới việc mơ hình phát đối tượng Hình 24 Cách Yolo dự đốn (nguồn: aicurious.io) 40 40 Hàm loss function YOLO chia thành phần: • (localization loss): hàm mát bounding box dự báo so với thực tế: • (confidence loss): đo lường sai số phân phối xác suất classes: Để điều chỉnh phạt loss function trường hợp dự đốn sai bounding box ta thơng qua hệ số điều chỉnh ta muốn giảm nhẹ hàm loss function trường hợp cell không chứa vật thể hệ số điều chỉnh 1.1.8 Telegram Bot API: Telegram Bot API tính tiện ích Telegram, ứng dụng nhắn tin, gọi điện, chia sẻ file đa tảng, dành cho nhà phát triển Hình 25 Logo Telegram (nguồn: telegram.org) Có thể hiểu Bot API giống robot có sẵn ứng dụng điện thoại, điều giúp cho nhà phát triển tạo lập Bot Bên cạnh người dùng điều khiển Bot để nhận thông báo tin tức, tạo cơng cụ tùy chỉnh Ngồi ứng dụng chúng tích hợp dịch vụ Gmail Bot, Gif Bot, Bot Father,… Telegram Bot API hỗ trợ hầu hết ngơn ngữ lập trình phổ biến NodeJS, Python, C#, PHP, 41 41 Hình 26 Ngun lí hoạt động Telegram Bot API (nguồn: core.telegram.org) 1.1.9 Google Colab: Google Colab (Colaboratory) sản phẩm từ Google Research, cho phép thực thi Python tảng đám mây, đặc biệt phù hợp với Data analysis, machine learning giáo dục Colab khơng cần u cầu cài đặt hay cấu hình máy tính, thứ chạy thơng qua trình duyệt, người dùng sử dụng tài ngun máy tính từ CPU tốc độ cao GPUs TPUs cung cấp cho người dùng Một số ưu điểm Google Colab kể tới sẵn sàng chạy Python thiết bị có kết nối Internet mà khơng cần cài đặt, chia sẻ làm việc nhóm dễ dàng, sử dụng miễn phí GPU cho dự án AI Hình 27 Sử dụng Google Colab để training data 42 42 1.1.10 Bài toán phát đối tượng (Object Detection): 1.1.10.1 Giới thiệu: Một lĩnh vực quan trọng Trí tuệ nhân tạo (Artificial Intelligence) thị giác máy tính (Computer Vision) Computer Vision lĩnh vực bao gồm phương pháp thu nhận, xử lý ảnh kỹ thuật số, phân tích nhận dạng hình ảnh, phát đối tượng, tạo ảnh, siêu phân giải hình ảnh nhiều Object Detection có lẽ khía cạnh sâu sắc thị giác máy số lần sử dụng thực tế Hình 28 Nhận diện biển số xe OpenCV (nguồn: opencv.org) Các mơ hình phát đối tượng thường đào tạo để phát diện đối tượng cụ thể hình ảnh, video hoạt động thời gian thực (real time) Ngay trước có phương pháp học sâu cơng nghệ xử lý hình ảnh đại, việc phát đối tượng quan tâm nhiều Khi người ta thường ứng dụng số phương pháp xử lý ảnh SIFT (Scale-invariant feature transform) HOG (histogram of oriented gradient) với kỹ thuật trích xuất cạnh vật thể 1.1.10.2 Các thuật toán phát đối tượng phổ biến: 1.1.10.2.1 Phương pháp mô tả đặc trưng (Histogram of Oriented Gradients – HOG): Phương pháp mô tả đặc trưng (Histogram of Oriented Gradient – HOG) phương pháp phát đối tượng lâu đời Nó giới thiệu lần vào năm 1986 HOG sử dụng thuật tốn trích chọn đặc trưng đối tượng ảnh Mục đích HOG trừu tượng hóa đối tượng cách trích xuất đặc trưng đối tượng bỏ thơng tin khơng hữu ích Vì vậy, HOG sử dụng chủ yếu để mơ tả hình dạng xuất đối tượng ảnh 43 43 HOG dựa việc chia ảnh đầu vào thành ảnh con, tính tốn histogram ảnh để tổng hợp trích rút vector gọi vector đặc trưng ứng với đối tượng 44 44 Bản chất phương pháp HOG sử dụng thông tin phân bố cường độ gradient (intensity gradient) hướng biên (edge directions) để mô tả đối tượng cục ảnh Các toán tử HOG cài đặt cách chia nhỏ ảnh thành vùng con, gọi cell với cell, ta tính tốn histogram hướng gradients cho điểm nằm cell Ghép histogram lại với ta có biểu diễn cho ảnh ban đầu Để tăng cường hiệu nhận dạng, histogram cục chuẩn hóa độ tương phản cách tính ngưỡng cường độ vùng lớn cell, gọi khối (blocks) sử dụng giá trị ngưỡng để chuẩn hóa tất cell khối Kết sau bước chuẩn hóa vector đặc trưng có tính bất biến thay đổi điều kiện ánh sáng Hình 29 Kiến trúc hệ thống HOG để phát đối tượng (nguồn: Neptune.AI) 1.1.10.2.2 Mạng nơ-ron tích chập theo vùng (R-CNN): Mạng nơ-ron tích chập theo vùng (R-CNN) cải tiến kỹ thuật phát đối tượng từ phương pháp trước HOG SIFT Trong mơ hình R-CNN thường trích xuất đặc trưng cần thiết đối tượng (thường khoảng 2000 đặc trưng) cách sử dụng giải thuật chọn lọc (gọi selective search) Quá trình lựa chọn đặc trưng quan trọng tính tốn với trợ giúp thuật tốn tìm kiếm chọn lọc Với R-CNN, việc trích xuất vùng region proposal thực thơng qua thuật tốn Selective Search để trích chọn vùng có khả chứa đối tượng (khoảng 2000 vùng) Sau đó, vùng (ảnh) resize kích thước cố định đưa qua pretrained CNN model (imagenet), từ tiến hành xác định offset nhãn đối tượng 45 45 Hình 30 Chu trình phát đối tượng với mạng CNN (nguồn: neptune.ai) 1.1.10.2.3 Mơ hình Fast R-CNN Faster R-CNN: Mặc dù mơ hình R-CNN thực tính tốn phát đối tượng đạt hiệu tồn đọng nhiều điểm bất cập, điển hình tốc độ mơ hình Vì vậy, số phương pháp phát triển để giải vấn đề xử lý nhược điểm R-CNN Trong số bật mơ hình Fast R-CNN Faster R-CNN Với Faster-RCN, thay việc sử dụng Selective Search, mơ hình thiết kế thêm mạng gọi RPN (Region Proposal Network) để trích rút vùng có khả chứa đối tượng ảnh Nhìn chung, sau thực RPN, bước xử lý sau tương tự Fast-RCNN nhanh nhiều (vì khơng sử dụng Selective Search) thiết kế mạng end-to-end trainable network Hình 31 Minh họa mơ hình Fast-RCNN (nguồn: neptune.ai) 46 46 Mơ hình Faster R-CNN phiên tốt Fast RCNN cải thiện tốc độ hoạt động nhiều so với phiên tiền nhiệm Trong mơ hình R-CNN Fast R-CNN sử dụng thuật tốn tìm kiếm chọn lọc để tính tốn đề xuất vùng, phương pháp Faster R-CNN thay phương pháp có mạng đề xuất vùng đặc trưng (Region Proposal Network – RPN) Mạng RPN giảm thời gian tính tốn để trích chọn đặc trưng, thường 10ms cho hình ảnh Mạng bao gồm lớp tích hợp mà từ thu đặc trưng cần thiết thơng qua lớp tích chập liên tiếp Để đưa vùng đặc trưng, sử dụng hộp neo (anchor box) với tỉ lệ, kích thước độ lớn khác Đối với anchor box RPN, thực binary classifier để phân loại vùng trích chọn có khả chứa đối tượng hay khơng, dự đốn hộp giới hạn (bounding box) tương ứng Sau đó, vùng trích chọn đưa qua lọc gọi Non maximum suppression (NMS) để loại bỏ bounding box dư thừa Đầu NMS cho qua lớp gọi RoI Align (Region of Interest) để cố định kích thước đầu vùng đặc trưng trích chọn Sau đó, phần xử lý mơ hình tương tự mơ hình Fast-RCNN 1.2 Giới thiệu đồ án: Hệ thống cảnh báo vật thể xâm nhập thời gian thực sử dụng kiến thức công nghệ giảng dạy mơn “Trí tuệ nhân tạo", “Nhập mơn khoa học liệu” “Lập trình Python” để xây dựng hệ thống 1.3 Kết chương 1: Thông qua tìm hiểu tổng quan cơng cụ mơi trường phát triển ứng dụng, thấy rõ tầm quan trọng các công cụ môi trường học để phát triển ứng dụng, từ làm sở yêu cầu, bước thiết kế trình bày chương 47 47 CHƯƠNG PHÂN TÍCH THIẾT KẾ HỆ THỐNG 2.1 Phân tích u cầu tốn: Mặc dù nhiều thuật toán nhận diện vật thể phát triển vào năm gần đây, tốc độ xác chúng chưa tối ưu Nhưng tiến gần cho thấy vấn đề cải thiện cách nhanh chóng Một ví dụ điển hình Facebook, đăng ảnh mới, tự động tag người bạn có mặt người ảnh vài giây, xác lên đến 98% Vậy điều diễn nào? Ta cố gắng mô tả lại bước thực điều thư viện OpenCV YOLO Nhiệm vụ chương trình nhận dạng vật thể xem vật thể có biết đến hay chưa Ngồi ra, chương trình cịn thực cơng việc phát hiện, tách vật thể (nếu có) từ ảnh tĩnh, video từ frame ảnh thu từ camera Sau đó, lưu vào CSDL làm tập mẫu Có vấn đề cần phân tích tốn này: • Lấy ảnh từ máy tính, kết nối đến webcam hiển thị lên ImageBox • Thực tìm kiếm phát vật thể ImageBox (nếu có) • Tập trung vào đối tượng nhận diện chúng di chuyển theo hướng khác nhau, khơng gian thiếu ánh sáng,các góc bất lợi, … • Thực mã hoá • Thực so sánh ảnh mã hóa với để đưa đốn vật thể • Nhận dạng ảnh vật thể Nếu “biết” vật thể (có lưu thơng tin CSDL) hiển thị tên vật thể Nếu “khơng biết” (khơng có thơng tin vật thể CSDL) hiển là: “Unknow” 48 48 Hình 2.1 Sơ đồ ngữ cảnh hệ thống 2.2 Thiết kế hệ thống: Với chức nêu trên, chương trình chia thành phần chính: • Xử lý ảnh đầu vào • Phát vật thể • Xử lý đầu (Ảnh đầu dùng để nhận dạng) • Cảnh báo người dùng Hình 2.2 Sơ đồ hoạt động hệ thống 2.3 Kết chương Quy trình phân tích thiết kế hệ thống cho ta nhìn tổng quan, đầy đủ, đắn xác hệ thống thơng tin dùng để xây dựng hệ thống, từ làm tảng để xây dựng thành cơng hệ thống với đầy đủ chức trình bày chương 49 49 CHƯƠNG XÂY DỰNG HỆ THỐNG 3.1.1 Dataset dùng cho model: Hình 3.1 Ảnh dùng để training cho mơ hình Hình 3.2 Nhãn ảnh dùng để training 50 50 3.1.2 Traning: Hình 3.3 Quá trình training Google Colab 3.1.3 Màn hình nhận diện: Hình 3.4 Màn hình nhận diện 51 51 3.1.3 Thơng báo tới Telegram: Hình 3.5 Tin nhắn cảnh báo qua Telegram sau phát đối tượng 3.2 Kết chương 3: Quy trình xây dựng hệ thống cho ta thấy nhìn tổng quát hệ thống cảnh báo vật thể xâm nhập thời gian thực, kết đề tài Từ tảng sở lý thuyết phân tích thiết kế hệ thống trình bày chương chương 2, nhóm xây dựng thành cơng đề tài, đạt yêu cầu mà giảng viên nhóm đề ban đầu 52 52 KẾT LUẬN Kết đạt được: Tuy thời gian thực đề tài có hạn chế, nhìn chung, nhóm chúng em hồn thành yêu cầu mà giảng viên hướng dẫn giao, xây dựng thành công hệ thống, thực tốt việc nhận diện cảnh báo tới người dùng Tuy nhiên, hệ thống tồn đọng số mặt hạn chế: ● Vẫn tồn số bug ● Số lượng đối tượng nhận dạng cịn hạn chế ● Chưa có giao diện ● Chưa có kết nối sở liệu Hướng nghiên cứu: Qua việc phát triển hệ thống cảnh báo vật thể xâm nhập thời gian thực với hạn chế tồn nêu trên, hướng nghiên cứu nhóm em dự kiến sau: ● Xây dựng số chức chưa có chưa ổn định ● Thiết kế giao diện bắt mắt tiện lợi ● Huấn luyện thêm để hệ thống nhận diện nhiều đối tượng ● Tìm hiểu model tối ưu độ xác thời gian cho hệ thống ● Có thể triển khai hệ thống nhiều môi trường khác nhau, web, mobile, Khai thác, thương mại hoá hệ thống 53 53 54 54 ... thiết thực đề tài, nhóm em chọn đề tài: ? ?Xây dựng hệ thống cảnh báo vật thể xâm nhập thời gian thực? ?? với mục đích nghiên cứu, tìm hiểu hồn thành hệ thống phát cảnh báo vật thể xâm nhập thời gian thực. .. Hoàn thành hệ thống cảnh báo vật thể xâm nhập thời gian thực với đủ chức năng, nhận diện cảnh báo vật thể với độ trễ thấp sau gần tháng ● Ứng dụng kiến thức học thiết kế xây dựng hệ thống nhận... thiệu đồ án: Hệ thống cảnh báo vật thể xâm nhập thời gian thực sử dụng kiến thức cơng nghệ giảng dạy mơn “Trí tuệ nhân tạo", ? ?Nhập môn khoa học liệu” “Lập trình Python” để xây dựng hệ thống 1.3

Ngày đăng: 30/12/2022, 18:31

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w