Đăng ký Đăng nhập
Trang chủ Nghiên cứu mô hình single shot multi box detector cho việc phát hiện và khoanh v...

Tài liệu Nghiên cứu mô hình single shot multi box detector cho việc phát hiện và khoanh vùng sinh viên và thẻ sinh viên

.PDF
44
1
50

Mô tả:

BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ĐỒNG NAI BÁO CÁO TỔNG KẾT ĐỀ TÀI NGHIÊN CỨU KHOA HỌC CẤP TRƯỜNG NGHIÊN CỨU MÔ HÌNH SINGLE SHOT MULTI BOX DETECTOR CHO VIỆC PHÁT HIỆN VÀ KHOANH VÙNG SINH VIÊN VÀ THẺ SINH VIÊN Mã số: TR:2020-23/KCN-SV Chủ nhiệm đề tài: Vũ Anh Khoa Đồng Nai, 01/2021 BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ĐỒNG NAI BÁO CÁO TỔNG KẾT ĐỀ TÀI NGHIÊN CỨU KHOA HỌC CẤP TRƯỜNG NGHIÊN CỨU MÔ HÌNH SINGLE SHOT MULTI BOX DETECTOR CHO VIỆC PHÁT HIỆN VÀ KHOANH VÙNG SINH VIÊN VÀ THẺ SINH VIÊN Mã số: TR:2020-23/KCN-SV Chủ nhiệm đề tài (ký, họ tên) Vũ Anh Khoa Đồng Nai, 01/2021 DANH SÁCH NHỮNG THÀNH VIÊN THAM GIA NGHIÊN CỨU ĐỀ TÀI STT Họ và tên thành viên Đơn vị chủ trì 1 Vũ Anh Khoa Khoa Công nghệ 2 Nguyễn Hoàng Khoa Khoa Công nghệ 3 Phan Huỳnh Thanh Tú Khoa Công nghệ 4 Huỳnh Quốc Ân Khoa Công nghệ 5 Đỗ Phúc Thịnh Khoa Công nghệ MỤC LỤC MỤC LỤC ............................................................................................................................. i DANH MỤC CÁC KÝ HIỆU, CHỮ VIẾT TẮT ............................................................... iv DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ .............................................................................. v THÔNG TIN KẾT QUẢ NGHIÊN CỨU ĐỀ TÀI NGHIÊN CỨU KHOA HỌC CẤP TRƯỜNG ............................................................................................................................. 7 Chương 1. Giới Thiệu ..................................................................................................... 8 Tổng quan ............................................................................................................... 8 Ý nghĩa khoa học và thực tiễn của đề tài ................................................................ 8 1.2.1. Tính khoa học ............................................................................................... 8 1.2.2. Tính ứng dụng ............................................................................................... 9 Mục tiêu của đề tài .................................................................................................. 9 Phát biểu bài toán .................................................................................................... 9 Phạm vi bài toán ...................................................................................................... 9 Mô tả chung về hệ thống ......................................................................................... 9 Đóng góp của đề tài .............................................................................................. 10 Cấu trúc đề tài ....................................................................................................... 10 Chương 2. Cơ Sở Lý Thuyết Và Các Công Trình Nghiên Cứu Liên Quan ................. 11 Một số cơ sở lý thuyết ........................................................................................... 11 2.1.1. Mạng Nơ-ron tích chập (Convolutional Neural Network – CNN) ............. 11 Các công trình nghiên cứu liên quan (Phần này em muốn để dưới vì các công trình đều sử dụng CNN) .......................................................................................................... 16 Hướng tiếp cận của đề tài...................................................................................... 21 Chương 3. Hệ Thống Nhận dạng thẻ sinh viên ............................................................ 22 Giới thiệu .............................................................................................................. 22 Mô hình Single Shot Multibox Detector SSD ...................................................... 22 3.2.1. Single Shot Detector ................................................................................... 22 3.2.2. Mô hình SSD .............................................................................................. 23 3.2.3. Huấn luyện mô hình SSD ........................................................................... 27 3.2.4. Một số kỹ thuật khác để huấn luyện mô hình ............................................. 28 3.2.5. Kết quả của mô hình SSD trên bộ dữ liệu PASCAL VOC2007 ................ 29 Áp dụng mô hình SSD cho bài toán nhận dạng thẻ sinh viên .............................. 32 3.3.1. Xây dựng dữ liệu huấn luyện ...................................................................... 32 3.3.2. Đánh dấu dữ liệu huấn luyện ...................................................................... 32 3.3.3. Mô hình huấn luyện .................................................................................... 34 Chương 4. Thực Nghiệm Và Đánh Giá ........................................................................ 35 Giới thiệu .............................................................................................................. 35 Các bộ dữ liệu chuẩn để thực nghiệm ................................................................... 35 4.2.1. Bộ dữ liệu PASCAL VOC 2007 ................................................................. 35 4.2.2. Bộ dữ liệu sinh viên DNTU ........................................................................ 36 Cài đặt chương trình ứng dụng demo ................................................................... 36 4.3.1. Môi trường và ngôn ngữ cài đặt ................................................................. 36 4.3.2. Chuẩn bị dữ liệu .......................................................................................... 36 4.3.3. Huấn luyện mô hình trên giao diện console ............................................... 37 Kết quả thực nghiệm ............................................................................................. 38 Chương 5. Kết Luận ..................................................................................................... 40 Kết luận ................................................................................................................. 40 Hướng phát triển ................................................................................................... 40 TÀI LIỆU THAM KHẢO .................................................................................................. 41 DANH MỤC CÁC KÝ HIỆU, CHỮ VIẾT TẮT STT Ký hiệu viết tắt Nội dung viết tắt 1 CNN Convolutional Neural Network 2 conv Convolutional 3 ReLU Rectified Linear Unit 4 SSD Single shot multibox detector 5 Intersection over Union IoU DANH MỤC CÁC HÌNH VẼ, ĐỒ THỊ Hình 1.1. Mô tả chung về hệ thống trong hai giai đoạn ngoại tuyến và trực tuyến. .......... 10 Hình 2.1. Kiến trúc CNN cơ bản. ....................................................................................... 11 Hình 2.2. Các filter chính là thông số cần học ................................................................... 13 Hình 2.3. Hàm kích hoạt ReLU .......................................................................................... 14 Hình 2.4. Ví dụ về maxpooling với filter 2x2 và stride là 2............................................... 14 Hình 2.5. Max Pooling để cho CNN có khả năng nhận dạng được các đối tượng với mọi biến dạng của hình ảnh ....................................................................................................... 15 Hình 2.6. Giai đoạn Flattening ........................................................................................... 15 Hình 2.7. Bước fully connection và hai nút output Dog, Cat ............................................. 16 Hình 2.8. Ví dụ một mạng CNN hoàn chỉnh ...................................................................... 16 Hình 2.9. Mô tả phương pháp vét cạn cho bài toán nhận dạng. ......................................... 17 Hình 2.10. Mô tả phương pháp selective search cho bài toán nhận dạng. ......................... 18 Hình 2.11. Mô tả việc sử dụng region proposal. ................................................................ 18 Hình 2.12. Mô tả việc sử dụng region proposal của R-CNN. ............................................ 19 Hình 2.13. Mô tả việc sử dụng proposal trên feature map và các bước tiếp theo của Fast RCNN. ................................................................................................................................... 19 Hình 2.14. Mô hình Fast R-CNN. ...................................................................................... 20 Hình 2.15. Mô tả cách thức hoạt động của Faster R-CNN. ............................................... 20 Hình 2.16. Mô hình Faster R-CNN. ................................................................................... 20 Hình 3.1. Bốn anchors đã được định nghĩa trước (màu xanh lá cây), và có 4 prediction (màu xanh nước biển) tương ứng với từng anchor trên. .............................................................. 23 Hình 3.2. Mô phỏng mô hình SSD. .................................................................................... 24 Hình 3.3. Mô phỏng sử dụng các object detector khác nhau trên mỗi feature maps. ........ 24 Hình 3.4. Chi tiết về mô hình SSD. .................................................................................... 24 Hình 3.5. Ảnh qua mô hình sẽ có kích thước nhỏ đi và có thể sẽ bỏ qua một số đối tượng nhỏ. ..................................................................................................................................... 25 Hình 3.6. Ground truth box là các khung ở mục a. Default box là các khung gạch nối ở mục b, c. ..................................................................................................................................... 26 Hình 3.7. Cách tính Intersection over Union và việc phân loại mẫu dựa vào kết quả tính được. ................................................................................................................................... 26 Hình 3.8. Mô tả việc đối xứng ảnh. .................................................................................... 29 Hình 3.9. Bộ dữ liệu PASCAL VOC2007. ........................................................................ 29 Hình 3.10. Kiến trúc SSD. .................................................................................................. 30 Hình 3.11. Chi tiết các thông số khi huấn luyện mô hình SSD. ......................................... 31 Hình 3.12. Các box được xác định dựa vào tọa độ ước tính được. .................................... 31 Hình 3.13. Các box và nhãn của chúng được xác định. ..................................................... 32 Hình 3.14. Công cụ đánh dấu dữ liệu labelImg. ................................................................. 33 Hình 3.15. Giao diện của phần mềm labelImg. .................................................................. 33 Hình 3.16. Vẽ khung cho sinh viên, thẻ sinh viên để xuất file txt dùng cho huấn luyện mô hình SSD. ............................................................................................................................ 34 Hình 4.1. Một số ảnh trong bộ dữ liệu PASCAL VOC 2007............................................. 35 Hình 4.2. Train mô hình SSD với các thông số như hình. ................................................. 37 Hình 4.3. Train mô hình SSD với các thông số như hình. ................................................. 38 Hình 4.4. Một số mẫu cho kết quả khá tốt.......................................................................... 39 Hình 4.5. Một số mẫu cho kết quả không tốt. .................................................................... 39 THÔNG TIN KẾT QUẢ NGHIÊN CỨU ĐỀ TÀI NGHIÊN CỨU KHOA HỌC CẤP TRƯỜNG (dùng cho Báo cáo tổng kết đề tài) 1. Thông tin chung: - Tên đề tài: Nghiên cứu mô hình Single shot multi box detector cho việc phát hiện và khoanh vùng sinh viên và thẻ sinh viên - Mã số: TR:2020-23/KCN-SV - Chủ nhiệm đề tài: ThS. Đỗ Phúc Thịnh Điện thoại: 0847088880 Email: [email protected] - Đơn vị quản lý về chuyên môn (Khoa, Tổ bộ môn): Khoa Công nghệ - Thời gian thực hiện: 06 tháng 2. Mục tiêu: Nghiên cứu mô hình nhận dạng đối tượng SSD, sử dụng được mô hình này để áp dụng nó cho bài toán cụ thể là nhận dạng sinh viên và thẻ sinh viên. 3. Nội dung chính: - Nghiên cứu về các mô hình nhận dạng đối tượng - Nghiên cứu về mô hình SSD - Áp dụng mô hình SSD cho bài toán nhận dạng sinh viên và thẻ sinh viên 4. Kết quả chính đạt được - Nghiên cứu, tổng hợp các tài liệu liên quan đến đề tài - Phân tích điểm mạnh, điểm yếu của các đề tài nghiên cứu liên quan - Phân tích và thiết kế hệ thống - Thực nghiệm mô hình - Rà soát, chỉnh sửa nội dung, hoàn thiện định dạng, đóng gói Chương 1. Giới Thiệu Tổng quan Hiện nay đang diễn ra cuộc cách mạng công nghệ lần thứ tư, tức là có sự liên kết giữa vạn vật (Internet Of Things) thông qua các thiết bị máy móc cũng như các giải pháp công nghệ về trí tuệ nhân tạo. Trong cuộc cách mạng đó, người ta có nhu cầu xây dựng thành phố thông minh (Smart City) với hệ thống giám sát bằng các camera giám sát CCTV, điều này có nghĩa là chúng có khả năng thông qua các thiết bị và phần mềm với cốt lõi chính là trí tuệ nhân tạo để giúp tự động giám sát, quản lý sự vật cũng như con người. Hệ thống Smart City này cũng được triển khai cho các trường học với quy mô nhỏ hơn. Trong đó, công đoạn xử lý các camera giám sát là công đoạn rất quan trọng vì nó liên quan đến việc quản lý các hoạt động của sinh viên. Hiện nay, có nhiều tác vụ tự động nhận dạng như nhận dạng bảng số xe, nhận dạng người ra vào sử dụng các thuộc tính thủ công. Tuy nhiên, những hệ thống này chỉ áp dụng cho các trường hợp cụ thể và tốc độ nhận dạng thời gian thực vẫn còn khá chậm, vì thế các giải pháp này áp dụng cho việc nhận dạng là không còn phù hợp. Ngày nay, hệ thống camera giám sát đã trở lên phổ biến và đang được sử dụng rộng rãi trong nhiều lĩnh vực với mục đích hỗ trợ an ninh cho các công ty, ngân hàng, cửa hàng.., nhưng các camera này chỉ có khả năng lưu trữ các dữ liệu video và chúng ta cần thuê các nhân viên quan sát và phát hiện khi có người nào đó xâm nhập. Phương pháp này không hiệu quả, tốn kém chi phí, thời gian và phụ thuộc nhiều vào yếu tố con người, khó khăn trong việc tìm kiếm dữ liệu. Nêu áp dụng phương pháp này vào việc quản lý sinh viên ra vào ở các trường đại học cũng sẽ tốn một số lượng nhân công, bảo vệ để rà soát việc sinh viên có ăn mặc chỉnh tề hay không. Mặt khác, với tình hình của dịch Covid-19, Nước ta đã ban lệnh giãn cách xã hội nên việc kiểm tra sinh viên ra vào cũng rất khó khăn. Chính vì thế, cần cải tiến các camera giám sát thông minh hơn để giúp nhà trường có thể tự động làm các công việc này mà không cần tốn nhiều nhân công như trước nữa. Ý nghĩa khoa học và thực tiễn của đề tài 1.2.1. Tính khoa học Việc nhận dạng đối tượng trong ảnh vẫn còn nhiều thách thức như bị che khuất, ánh sáng phân bố không đồng đều, độ giãn… Vì thế cộng đồng cần phải nỗ lực hơn nữa để khảo sát riêng biệt cho bài toán này, cải tiến các giải pháp cũ cũng như đề xuất những giải pháp mới. 1.2.2. Tính ứng dụng Ngày nay, camera giám sát được gắn ở khắp mọi nơi. Tuy nhiên, hầu hết các videos từ các camera này thường chỉ được lưu trữ để tìm kiếm. Khi sự cố xảy ra thì sẽ tốn chi phí và thời gian để điều tra. Vì thế việc tự động giám sát, quản lý ra vào từ các camera này là cần thiết để có thể phát hiện hay cảnh báo sớm để phòng tránh các sự cố đáng tiếc. Việc nhận dạng dối tượng còn được ứng dụng cho các siêu thị, rạp chiếu phim... Khi quản lý được thông tin về khuôn mặt, hình dáng của người mua hàng, người quản lý có thể sử dụng thông tin này để biết được khách hàng của mình là khách hàng quen hay không quen. Mục tiêu của đề tài Đề tài đặt mục tiêu sử dụng được mô hình nhận dạng đối tượng SSD và áp dụng nó cho bài toán cụ thể là nhận dạng sinh viên và thẻ sinh viên. Phát biểu bài toán Đầu vào: Ảnh I là hình ảnh sinh viên chụp từ camera giám sát hoặc frame F lấy từ video V của camera giám sát. Đầu ra: Ảnh I’ có ảnh sinh viên và thẻ sinh viên đã được khoanh vùng riẻng. Phạm vi bài toán Trong phạm vi đề tài này đề tài chỉ nghiên cứu trên ảnh tĩnh có hình sinh viên. Tập dữ liệu được sử dụng để thử nghiệm và đánh giá là COCO, VOC. Mô tả chung về hệ thống Giai đoạn ngoại tuyến: Tập dữ liệu mẫu Vẽ khung đánh Huấn luyện để Nhận dạng dấu đối tượng lấy bộ trọng số người trong ảnh Giai đoạn trực tuyến: Ảnh sinh viên Khoanh vùng Gán nhãn cho vùng sinh viên và thẻ sinh viên và thẻ sinh sinh viên viên Hình 1.1. Mô tả chung về hệ thống trong hai giai đoạn ngoại tuyến và trực tuyến. Đóng góp của đề tài Với sự phát triển của Học sâu (Deep learning) thì việc áp dụng CNN vào bài toán này là rất khả quan, tuy nhiên với những phương pháp hiện tại, tốc độ thực thi rất chậm và khó có thể áp dụng cho ứng dụng chạy thời gian thực. Vì vậy đề tài sử dụng mô hình SSD cho kết quả nhận dạng khá nhanh và áp dụng mô hình này cho bài toán nhận dạng thẻ sinh viên. Vì mô hình SSD sử dụng cho tập dữ liệu có nhiều đối tượng khác nên khi áp dụng cho bài toán nhận dạng thẻ sinh viên, đề tài phải tạo một bộ dữ liệu dành riêng cho bài toán này. Việc tạo bộ dữ liệu mới đồng nghĩa với việc đề tài phải khoanh vùng đối tượng sinh viên và thẻ sinh viên cho từng bức ảnh trong bộ dữ liệu thu thập được. Cấu trúc đề tài Đề tài được trình bày trong 5 chương như sau: - Chương 1: Trình bảy tổng quan về đề tài của đề tài, phát biểu bài toán, động lực, các thách thức và đóng góp của đề tài. - Chương 2: Trình bày chi tiết về bài toán, cơ sở lý thuyết quan trọng và một số nghiên cứu liên quan đến dề tài của đề tài. - Chương 3: Mô tả chi tiết về hệ thống nhận dạng thẻ sinh viên. - Chương 4: Cài đặt hệ thống, thử nghiệm và đánh giá trên các bộ dữ liệu chuẩn. - Chương 5: Kết luận và hướng phát triển. Chương 2. Cơ Sở Lý Thuyết Và Các Công Trình Nghiên Cứu Liên Quan Một số cơ sở lý thuyết 2.1.1. Mạng Nơ-ron tích chập (Convolutional Neural Network – CNN) Mạng CNN là một tập hợp các lớp Convolution chồng lên nhau và sử dụng các hàm nonlinear activation như ReLU và tanh để kích hoạt các trọng số trong các node. Mỗi một lớp sau khi thông qua các hàm kích hoạt sẽ tạo ra các thông tin trừu tượng hơn cho các lớp tiếp theo. Mô hình này gọi là mạng kết nối đầy đủ (fully connected layer) hay mạng toàn vẹn (affine layer). Còn trong mô hình CNNs thì ngược lại. Các layer liên kết được với nhau thông qua cơ chế convolution. Layer tiếp theo là kết quả convolution từ layer trước đó, nhờ vậy mà ta có được các kết nối cục bộ. Như vậy mỗi neuron ở layer kế tiếp sinh ra từ kết quả của filter áp đặt lên một vùng ảnh cục bộ của neuron trước đó. Mỗi một layer được sử dụng các filter khác nhau thông thường có hàng trăm hàng nghìn filter như vậy và kết hợp kết quả của chúng lại. Ngoài ra có một số layer khác như pooling/subsampling layer dùng để chắt lọc lại các thông tin hữu ích hơn (loại bỏ các thông tin nhiễu). Trong quá trình huấn luyện mạng (traning) CNN tự động học các giá trị qua các layer filter dựa vào cách thức thực hiện. Ví dụ trong tác vụ phân lớp ảnh, CNNs sẽ cố gắng tìm ra thông số tối ưu cho các filter tương ứng theo thứ tự raw pixel > edges > shapes > facial > high-level features. Layer cuối cùng được dùng để phân lớp ảnh. Hình 2.1. Kiến trúc CNN cơ bản.1 1 https://en.wikipedia.org/wiki/Convolutional_neural_network Trong mô hình CNN có 2 khía cạnh cần quan tâm là tính bất biến (Location Invariance) và tính kết hợp (Compositionality). Với cùng một đối tượng, nếu đối tượng này được chiếu theo các gốc độ khác nhau (translation, rotation, scaling) thì độ chính xác của thuật toán sẽ bị ảnh hưởng đáng kể. Pooling layer sẽ cho bạn tính bất biến đối với phép dịch chuyển (translation), phép quay (rotation) và phép co giãn (scaling). Tính kết hợp cục bộ cho ta các cấp độ biểu diễn thông tin từ mức độ thấp đến mức độ cao và trừu tượng hơn thông qua convolution từ các filter. Đó là lý do tại sao CNNs cho ra mô hình với độ chính xác rất cao. Cũng giống như cách con người nhận biết các vật thể trong tự nhiên. Mạng CNN sử dụng 3 ý tưởng cơ bản: Các trường tiếp nhận cục bộ (local receptive field), trọng số chia sẻ (shared weights), tổng hợp (pooling). - Trường tiếp nhận cục bộ (local receptive field): Đầu vào của mạng CNN là một ảnh. Ví dụ như ảnh có kích thước 28×28 thì tương ứng đầu vào là một ma trận có 28×28 và giá trị mỗi điểm ảnh là một ô trong ma trận. Trong mô hình mạng ANN truyền thống thì chúng ta sẽ kết nối các neuron đầu vào vào tầng ảnh. Tuy nhiên trong CNN chúng ta không làm như vậy mà chúng ta chỉ kết nối trong một vùng nhỏ của các neuron đầu vào như một filter có kích thước 5×5 tương ứng (28- 5 + 1) 24 điểm ảnh đầu vào. Mỗi một kết nối sẽ học một trọng số và mỗi neuron ẩn sẽ học một bias. Mỗi một vùng 5×5 đấy gọi là một trường tiếp nhận cục bộ. Như vậy, local receptive field thích hợp cho việc phân tách dữ liệu ảnh, giúp chọn ra những vùng ảnh có giá trị nhất cho việc đánh giá phân lớp. - Trọng số chia sẻ (shared weight and bias): Đầu tiên, các trọng số cho mỗi filter (kernel) phải giống nhau. Tất cả các nơ-ron trong layer ẩn đầu sẽ phát hiện chính xác feature tương tự chỉ ở các vị trí khác nhau trong hình ảnh đầu vào. Chúng ta gọi việc map từ input layer sang hidden layer là một feature map. Tóm lại, một convolutional layer bao gồm các feature map khác nhau. Mỗi một feature map giúp detect một vài feature trong bức ảnh. Lợi ích lớn nhất của trọng số chia sẻ là giảm tối đa số lượng tham số trong mạng CNN. - Lớp tổng hợp (pooling layer): Pooling layer thường được sử dụng ngay sau layer convulational để đơn giản hóa thông tin đầu ra để giảm bớt số lượng neuron. Thủ tục pooling phổ biến là max-pooling, thủ tục này chọn giá trị lớn nhất trong vùng đầu vào 2×2. Như vậy qua layer Max Pooling thì số lượng neuron giảm đi phân nửa. Trong một mạng CNN có nhiều Feature Map nên mỗi Feature Map chúng ta sẽ cho mỗi Max Pooling khác nhau. Chúng ta có thể thấy rằng Max Pooling là cách hỏi xem trong các đặc trưng này thì đặc trưng nào là đặc trưng nhất. Cuối cùng ta đặt tất cả các layer lại với nhau thành một CNN với đầu ra gồm các neuron với số lượng tùy bài toán. Thông thường một CNN thường bao gồm các bước sau: Convolution, Max Pooling, Flattening và Fully Connection. - Convolution: Bao gồm các bộ lọc (filter) là một ma trận vuông có kích thước nhỏ cho trượt qua toàn bộ ma trận các pixel của ảnh đầu vào. Các bộ lọc này có các thông số như Depth (chiều sâu của bộ lọc), Stride (khoảng cách giữa mỗi lần trượt) và Padding (kích thước viền cho ảnh đầu vào). Khi trượt, ta tính tích chập của ma trận này và ma trận các pixel của vùng ảnh đang xét tới. Sau khi tính trên toàn bộ ảnh ta sẽ được bản đồ đặc trưng (feature map). Ở đây các filter chính là thông số cần học của mô hình. Sau bước convolution này có thêm một hàm kích hoạt, ở đây là ReLU (Rectified linear unit) Hình 2.2. Các filter chính là thông số cần học Hình 2.3. Hàm kích hoạt ReLU - Max Pooling: Có ba loại Pooling là Average Pooling, Sum Pooling và Max Pooling. Mục đích chính của Max Pooling là cho CNN khả năng detect được các đối tượng với mọi biến dạng của hình ảnh. Hình 2.4. Ví dụ về maxpooling với filter 2x2 và stride là 2.2 2 https://en.wikipedia.org/wiki/Convolutional_neural_network Hình 2.5. Max Pooling để cho CNN có khả năng nhận dạng được các đối tượng với mọi biến dạng của hình ảnh - Flattening: Bước này sẽ chuyển ma trận 2 chiều từ các bước trước hành ma trận một chiều như mô tả ở Hình 2.6 Hình 2.6. Giai đoạn Flattening - Fully Connection: Bước này sẽ kết nối các input từ bước Flattening và các lớp ẩn của mô hình và sẽ có các nút output tương ứng với các đối tượng. Các neuron tầng cuối đại diện cho các feature cấp cao như: Mũi, tai, chân… Hình 2.7. Bước fully connection và hai nút output Dog, Cat Hình 2.8. Ví dụ một mạng CNN hoàn chỉnh Các công trình nghiên cứu liên quan (Phần này em muốn để dưới vì các công trình đều sử dụng CNN) Để nhận dạng 1 đối tượng trong ảnh, các đơn giản nhất là thiết lập một cửa sổ trượt có kích thước là window size trượt từ trái qua phải, từ trên xuống dưới, quét qua toàn bộ bức ảnh. Để phát hiện các đối tượng khác nhau ở các góc nhìn khác nhau, chúng ta sẽ sử dụng cửa sổ trượt có kích thước thay đổi và ảnh đầu vào có kích thước thay đổi. Dựa vào windowsize, chúng ta có thể cắt tấm hình bự thành các tấm hình nhỏ, sau đó sẽ rescale các phần nhỏ của bức ảnh thành các bức ảnh có kích thước cố định. Các phần của bức ảnh sau đó sẽ được đem qua bộ phân lớp CNN để rút trích các đặc trưng, sau đó sử dụng một hàm phân lớp (như svm, logictic regression) để xác định layer của bức hình và sử dụng linear regressor để tìm bao đóng của đối tượng. Các phương pháp thuộc dạng này được gọi là vét cạn. Tuy nhiên, do phải quét trên toàn bộ ảnh nên hiệu năng của phương pháp này không cao. Hình 2.9. Mô tả phương pháp vét cạn cho bài toán nhận dạng. Thay vì hướng tiếp cận vét cạn như đã đề cập ở trên, chúng ta sử dụng phương pháp region proposal để tạo các region of interest (ROIs) để phát hiện đối tượng. Selective search là một phương pháp nằm trong nhóm region proposal. Trong phương pháp selective search (SS) [1], chúng ta bắt đầu bằng cách xem các pixel là mỗi nhóm, các lần lặp tiếp theo, chúng ta sẽ tính khoảng cách ngữ nghĩa (ví dụ như là màu sắc, cường độ ánh sáng) giữa các nhóm và gom các nhóm có khoảng cách gần nhau về chung 1 nhóm để tìm ra phân vùng có khả năng cao nhất chứa đối tượng (ưu tiên gom những nhóm nhỏ trước). Như hình bên dưới, dòng đầu tiên, bức ảnh đâu tiên là ta có một vài nhóm nhỏ ở thời điểm X nào đó, ở hình thứ 2 là thực hiện gom nhớm theo cường độ màu sắc của hình số 1, và ở bước cuối cùng, ta thu được hình số 3. Những hình chữ nhật màu xanh ở dòng thứ 2 là những ROIS mô phỏng quá trình gom nhóm để tìm phân vùng có khả năng chứa đối tượng.
- Xem thêm -

Tài liệu liên quan