TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN HÀ NỘI KHOA TOÁN – CƠ – TIN HỌC BÁO CÁO MỘT SỐ VẤN ĐỀ CHỌN LỌC VỀ THỊ GIÁC MÁY TÍNH ĐỀ TÀI XÂY DỰNG MÔ HÌNH SINH MÔ TẢ ẢNH MỤC LỤC LỜI CẢM ƠN 4 LỜI MỞ ĐẦU 5 CHƯƠNG 1 T[.]
TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN HÀ NỘI KHOA TOÁN – CƠ – TIN HỌC BÁO CÁO MỘT SỐ VẤN ĐỀ CHỌN LỌC VỀ THỊ GIÁC MÁY TÍNH ĐỀ TÀI XÂY DỰNG MƠ HÌNH SINH MƠ TẢ ẢNH MỤC LỤC LỜI CẢM ƠN LỜI MỞ ĐẦU CHƯƠNG 1: TỔNG QUAN .6 Giới thiệu số thư viện đề tài Mô tả Bộ liệu sử dụng CHƯƠNG : PHÂN TÍCH BÀI TỐN 14 Phân tích tốn 14 Mơ hình tốn 15 Xception 16 a Mạng thần kinh tích chập (CNN) 16 b Xception .18 c Mơ hình Xception 19 d Word embedding 20 Mạng LSTM 21 a Mạng thần kinh hồi quy RNN 21 b Mạng LSTM 22 Xây dựng Model 24 CHƯƠNG 3: MƠ HÌNH SSD 300 30 Giới thiệu 30 Single shot detector gì? 32 Kiến trúc mô hình 33 Quá trình huấn luyện 34 a Chiến lược mapping default box 34 b Thuật toán NMS (Non-Max Suppression) 35 c Huấn luyện để tìm object 36 KẾT LUẬN 38 TÀI LIỆU THAM KHẢO 39 LỜI CẢM ƠN Ngày nay, lĩnh vực xử lý ảnh lên với nhu cầu cấp bách đầy thiết yếu Các ứng dụng dùng xử lý ảnh nhận diện đối tượng gây nên tác động lớn tr ải nghiệm người dùng Đặc biệt hơn, thuật toán ứng dụng Deep learning đa ng phát triển cách vơ mạnh mẽ chóng mặt, nhánh Comp uter Vision Natural Language Processing từ mà phát triển lên Sau bốn năm h ọc tập trường có may mắn gặp thầy Cao Văn Chung môn Một số vấn đề chọn lọc thị giác Thầy truyền cảm hứng cho chúng em lĩnh vực Công nghệ t hông tin lĩnh vực Xử lý ảnh Nhận diện đối tượng Chúng em xin chân thành cảm ơn Thầy Cao Văn Chung giảng dạy chúng em kiến thức học bổ ích Hà Nội, ngày 08 tháng 01 năm 2023 Sinh viên thực Lê Thị Hoa Lương Thị Thu Hương Ngơ Phương Thảo Do hiểu biết thực tế cịn nhiều bỡ ngỡ nên báo cáo chúng em khơng tránh khỏi thiếu sót Vì thế, chúng em mong nhận ý kiến đóng góp, để chúng em đúc kết nhiều học kinh nghiệm cho thân Chúng em xin chân thành cảm ơn! LỜI MỞ ĐẦU Trong thời đại ngày nay, phát triển bùng nổ Internet giúp ích nhiều cho cu ộc sống người, công nghệ xử lý ảnh ngày trở nên quan trọng Cùng v ới phát triển phổ biến đó, chương trình phần mềm xử dụng thuật toán x lý ảnh nhận diện đối tượng đời ngày nhiều, đòi hỏi phải tối ưu, hiệu quả, tiế t kiệm thời gian Tạo thích ảnh tạo thích ảnh kèm theo câu mơ tả cách có hệ th ống Trong vài năm trở lại đây, quy trình tạo thích ảnh tự động thu hút quan t âm lớn lĩnh vực Trí tuệ nhân tạo (AI) Chú thích hình ảnh định nghĩa trì nh để xây dựng kết hợp xử lý hình ảnh xử lý ngôn ngữ tự nhiên vị trí đầu vào đầu Tất tác vụ xử lý hình ảnh, chẳng hạn phân đoạn hình ảnh, theo dõi đối tượng, phát đối tượng, nhận dạng hình ảnh nhiều tác vụ khác, hầu hết thực Mạng thần kinh chuyển đổi (CNN) Để thực tác vụ xử l ý ngơn ngữ tự nhiên, ghi nhãn vai trị ngữ nghĩa, dịch máy thần kinh, nhận dạn g giọng nói, hỏi trả lời, v.v., Mạng thần kinh tái phát (RNN) mạng nhớ dài hạn (L STM) cần thiết cho số đột phá lớn Báo cáo phần nghiên cứu đề tài tiếp sau báo cáo kì, bao gồm nội dung nh sau: Chương 1: Tổng quan Chương 2: Phân tích tốn Chương 3: Mơ hình SSD300 CHƯƠNG 1: TỔNG QUAN Giới thiệu số thư viện đề tài a Thư viện OpenCV OpenCV tên viết tắt open source computer vision library – hiểu thư viện nguồn mở cho máy tính Cụ thể OpenCV kho lưu trữ mã nguồn mở dùng để xử lý hình ảnh, phát triển ứng dụng đồ họa thời gian thực O penCV cho phép cải thiện tốc độ CPU thực hoạt động realtime Nó c ung cấp số lượng lớn mã xử lý phục vụ cho quy trình thị giác máy tính hay c ác learning machine khác Các module OpenCV: - Core functionality (core): Module sở hữu chế nhỏ gọn Nó dùng đ ể định hình cấu trúc sở liệu bản, bao gồm mảng đa chiề u Ngồi cịn xác định chức module kèm khác - Image Processing (imgproc): Đây module dùng cho trình xử lý hình ả nh Nó cho phép người dùng thực hoạt động lọc hình ảnh tuyến tính phi tuyến, thực phép biến hình, thay đổi không gian màu, xây dựng biểu đ nhiều thao tác khác liên quan - Video Analysis (video): Giống tên gọi nó, module cho phép phân tích video Kết trả bao gồm ước tính chuyển động, thực tách phép toán theo dõi vật thể - Camera Calibration and 3D Reconstruction (calib3d): Module cung cấp th uật tốn hình học đa chiều hiệu chuẩn máy ảnh single stereo Ngoài r a cịn đưa dự đốn kiểu dáng đối tượng sử dụng thuật tốn thư tín âm yếu tố tái tạo 3D - 2D Features Framework (features2d): Module giúp phát tính trội nhận diện, truy xuất thông số thông số đối chọi OpenCV cho phần mềm đa nhiệm Nó ứng dụng nhiều trườn g hợp khác Ví dụ, ta nói phần mềm định vị, đồ nói chung Hẳn t rong có lần cần sử dụng đến map online không Bạn sử dụng map để tìm đường, tra cứu tình hình giao thông đơn giản xem x ét hình ảnh thực tế địa điểm cần đến Những lúc vậy, OpenCV đóng vai trị l nhà cung cấp liệu hình ảnh cho app Map OpenCV đem đến cho người dùng hình ảnh đường phố hay nhà, người xung quanh địa điểm định OpenCV dùng để khởi tạo hình ảnh chiều phức tạp Hoạt độn g yêu thích, thời đại trí tuệ nhân tạo AI phát triển nà y Thậm chí OpenCV xuất lĩnh vực y tế, nghiên cứu khoa học Nó cho phép phân tích hình ảnh mức độ tinh vi Điều giúp ích nhiều cho phát triển ngành nghề cao cấp b Tensor Tensor cấu trúc liệu tensorflow đại diện cho tất loại liệu Nói cá ch khác, tất kiểu liệu đưa vào tensorflow gọi Tensor Vậy nên hiểu Tensorflow thư viện mơ tả, điều chỉnh dịng chảy c ác Tensor Tensor có thuộc tính rank, shape type c Keras Keras open source cho Neural Network viết ngôn ngữ Python Nó library phát triển vào năm 2005 Francois Chollet, kỹ sư nghiên cứu Deep Learning Keras sử dụng chung với thư viện tiếng Tensorflow, C NTK, Theano d Numpy Numpy (Numeric Python): thư viện toán học phổ biến mạnh mẽ Pytho n Cho phép làm việc hiệu với ma trận mảng, đặc biệt liệu ma trận mảng lớn với tốc độ xử lý nhanh nhiều lần sử dụng “core Python” đơn tqdm tiện ích python, từ có nghĩa “tiến trình” tiếng Ả Rập (ta qadum) Trong python, giúp hiển thị vòng lặp dạng giao diện tiến độ m ột cách thông minh – cần bọc vòng lặp tqdm bạn khơng phải lo cà i đặt hiển thị tiến trình cho Mơ tả Bộ liệu sử dụng a Giới thiệu MS Coco: Tập trung vào phát phân đoạn đối tượng COCO hay Common Objects in COntext tập liệu quy mô lớn sử dụng để phát hiện, phân đoạn tạo phụ đề dành cho đối tượng Điều thường áp dụng để đá nh giá hiệu thuật tốn thị giác máy tính Tập liệu COCO dán nhãn, c ung cấp thông tin để đào tạo hệ thống thị giác máy tính giám sát nhận r a yếu tố điển hình tập liệu Tất nhiên, hệ thống khơng thể hồn hảo, đó, liệu COCO đóng vai trị sở để đánh giá tiến trình hệ thống theo th ời gian kết nghiên cứu thị giác máy tính Tập liệu chứa ảnh 91 l oại đối tượng dễ dàng nhận có tổng cộng 2,5 triệu đối tượng gắn nhãn 328 000 ảnh Ngồi ra, MS Coco cịn cung cấp tài nguyên cho tác vụ thị giá c máy tính phức tạp ghi nhãn đa đối tượng, thích mặt nạ phân đoạn, th ích hình ảnh phát điểm đặc trưng MS Coco hỗ trợ hệ thống API trự c quan nhằm phân tích cú pháp hiển thị thích COCO API hỗ trợ nhiều đị nh dạng thích COCO tập liệu phát hiện, phân đoạn tạo phụ đề đối tượng quy mô lớn Tập li ệu chứa 91 lớp, bao gồm 250.000 người với điểm Kích thước tải xuống 37,57 GiB Nó chứa 80 loại đối tượng Bộ liệu COCO b Các loại nhãn liệu Bounding boxes Đây có lẽ kiểu nhãn liệu mà ta thường gặp Bounding boxes thực chất hình chữ nhật bao quanh đối tượng ảnh Bounding boxes sử dụng cho c ác toán object detection Một bounding box định nghĩa thông tin tọa đ ộ: tọa độ điểm bên trái (top-left), chiều cao (height) chiều rộng (width) Polygonal Segmentation Không phải lúc ta khoanh vùng đối tượng hình chữ nhật bao quanh đối tượng đó, lý có nhiều thơng tin vùng hình chữ nhật đối t ượng mà quan tâm Do với trường hợp muốn khoanh vùng sát với đối tượng ta dùng đa giác (polygon) để biểu diễn vùng chứa đối tượng Semantic Segmentation Một định dạng gán nhãn cho toán Segmentation Với cách gán nhãn kiểu này, pi xel ảnh gán lớp tương ứng Coco Annotations COCO (Common Objects in Context) tập datasets phục vụ cho toán Object Detection, Segmentation, Image Captioning Tập liệu tổng cộng có khoảng 1.5 triệu o bjects thuộc 80 class khác COCO có loại Annotation sử dụng cho toán: ● Object detection ● Keypoint detection ● Stuff segmentation ● Panoptic segmentation ● Image captioning COCO lưu trữ liệu annotation file có định dạng JSON Với file liệu JS ON COCO gồm block sau: ● info: Trường liệu chứa thông tin tập dataset ● licenses: Trường liệu chứa thông tin giấy phép tập dataset ● categories: Trường liệu chứa danh sách tên đối tượng ● images: Trường liệu lưu trữ thông tin hình ảnh đường dẫn đến ảnh, tên hình ảnh, id ảnh ( ảnh có id nhất) ● annotations: Trường liệu chứa thông tin bouding boxes đối t ượng ảnh toán object detection, thơng tin segmentation cho tốn segment thơng tin caption cho toán image captioning { "info": info, "licenses":[lisenses], 10