Nghiên cứu ứng dụng mạng học sâu tích chập 3d trong nhận dạng cử chỉ tay

60 96 1
Nghiên cứu ứng dụng mạng học sâu tích chập 3d trong nhận dạng cử chỉ tay

Đ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

Nhan đề : Nghiên cứu ứng dụng mạng học sâu tích chập 3D trong nhận dạng cử chỉ tay Tác giả : Nguyễn Duy Cương Người hướng dẫn: Đinh Viết Sang Từ khoá : Mạng nơron; Nhận dạng cử chỉ tay; Mạng học sâu tích chập Năm xuất bản : 2019 Nhà xuất bản : Trường đại học Bách Khoa Hà Nội Tóm tắt : Tổng quan bài toán nhận dạng cử chỉ tay, một số khái niệm cơ bản của học máy, mạng neural nhân tạo, mạng neural tích chập; đề xuất phương án giải quyết bài toán nhận dạng cử chỉ; thử nghiệm và đánh giá.

TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI VIỆN CÔNG NGHỆ THÔNG TIN VÀ TRUYỂN THÔNG ──────── * ─────── LUẬN VĂN TỐT NGHIỆP CAO HỌC NGÀNH CÔNG NGHỆ THÔNG TIN NGHIÊN CỨU ỨNG DỤNG MẠNG HỌC SÂU TÍCH CHẬP 3D TRONG NHẬN DẠNG CỬ CHỈ TAY Học viên thực hiện: Nguyễn Duy Cương Lớp 17ACNTT Giảng viên hướng dẫn: TS Đinh Viết Sang HÀ NỘI 10 - 2019 LỜI NÓI ĐẦU Học máy (Machine learning) với học sâu (Deep learning) lĩnh vực tiêu biểu ngành trí tuệ nhân tạo (Artificial Intelligent) gây nên sốt công nghệ toàn giới vài năm Trong giới học thuật, năm có hàng ngàn báo khoa học đề tài Trong lĩnh vực công nghiệp, từ công ty lớn Google, Facebook, Amazon đến nhiều công ty khởi nghiệp đầu tư vào trí tuệ nhân tạo Hàng loạt ứng dụng sử dụng trí tuệ nhân tạo đời lĩnh vực sống, từ khoa học máy tính đến ngành liên quan vật lý, hóa học, y học, trị Trong ngành thị giác máy tính (Computer Vision), trí tuệ nhân tạo tạo đột phá, nhiều tốn khó thị giác máy tính giải tốt nhờ áp dụng kỹ thuật học sâu (Deep learning) Một số tốn Nhận dạng cử tay người (hand gesture recognition) Trong phạm vi luận văn xin đề xuất ứng dụng mô hình học sâu - mạng neural tích chập chiều C3D để giải cho toán Bằng việc áp dụng C3D với số kỹ thuật đại xử lý ảnh thị giác máy tính, mơ hình tơi đạt kết tốt liệu thu thập viện nghiên cứu MICA, đại học Bách Khoa Hà Nội Tôi xin gửi lời cảm ơn sâu sắc tới thầy giáo – Tiến sĩ Đinh Viết Sang – Giảng viên mơn Khoa học máy tính, Viện Cơng nghệ thông tin Truyền thông, Trường Đại học Bách Khoa Hà Nội Cảm ơn thầy hướng dẫn tận tình, kiên nhẫn tạo động lực cho tơi khoảng thời gian thực đồ án tốt nghiệp Tiếp theo, xin chân thành cảm ơn thầy cô Viện Công nghệ thông tin truyền thông, Viện đào tạo sau đại học, Viện nghiên cứu MICA, Trường Đại học Bách Khoa Hà Nội tạo điều kiện cho tơi q trình học tập nghiên cứu trường Cuối cùng, xin bày tỏ lịng cảm ơn tới người thân gia đình, bạn bè động viên giúp đỡ để hoàn thành luận văn Do thời gian kiến thức có hạn nên khơng tránh khỏi thiếu sót định Tơi mong nhận thơng cảm đóng góp q báu thầy bạn Cuối cùng, xin gửi lời chúc sức khỏe, hạnh phúc tới thầy cơ, gia đình bạn bè Hà Nội, ngày tháng năm 2019 Học viên MỤC LỤC LỜI NÓI ĐẦU MỤC LỤC DANH MỤC KÝ HIỆU, CÁC CHỮ VIẾT TẮT DANH MỤC CÁC BẢNG CHƯƠNG 1: ĐẶT VẤN ĐỀ 1.1 Bài toán nhận dạng cử tay 1.2 Mục tiêu bố cục luận văn CHƯƠNG 2: CƠ SỞ LÝ THUYẾT 2.1 Một số khái niệm học máy 2.1.1 Học có giám sát (supervised learning) học không giám sát (Unsupervised learning) 2.1.2 Học khớp (Overfitting), Học chưa khớp (Underfitting) học vừa khớp (Goodfitting) 11 2.1.3 Các độ đo (Metric) đánh giá mơ hình 13 2.2 Tổng quan mạng neural nhân tạo (Artificial neural network) 14 2.3 Mạng neural tích chập (CNN) 14 CHƯƠNG 3: ĐỀ XUẤT PHƯƠNG PHÁP GIẢI QUYẾT BÀI TOÁN NHẬN DẠNG CỬ CHỈ 22 3.1 Các nghiên cứu liên quan đến toán nhận dạng cử tay 22 3.1.1 Hướng tiếp cận biểu diễn hoạt động dựa đặc trưng thiết kế tay (hand-crafted features) 22 3.1.2 Hướng tiếp cận biểu diễn hoạt động dựa kỹ thuật học sâu 23 3.1.3 Một số kiến trúc CNN cho toán nhận dạng cử 24 3.2 Mạng tích chập C3D 26 CHƯƠNG 4: THỬ NGHIỆM VÀ ĐÁNH GIÁ 29 4.1 Mô tả liệu 29 4.2 Tiền xử lý liệu 35 4.3 Huấn luyện mơ hình 37 4.4 Kết đánh giá 40 4.4.1 Phương pháp sử dụng C3D nguyên liệu gốc 40 4.4.2 Phương pháp sử dụng C3D nguyên liệu làm sạch, tiền xử lý, tăng cường phân đoạn vùng bàn tay 41 4.4.3 Phương pháp C3D với thay đổi kiến trúc mạng so với mơ hình C3D ngun 47 KẾT LUẬN 56 Kết đạt 56 Những điểm hạn chế 56 Hướng phát triển 56 TÀI LIỆU THAM KHẢO 57 DANH MỤC KÝ HIỆU, CÁC CHỮ VIẾT TẮT Từ viết tắt K1 K2 K3 K4 K5 CNN RCNN PCNN C3D RNN GPU FC Nghĩa tiếng Anh Nghĩa tiếng Việt Kinect Kinect Kinect Kinect Kinect Convolutional Neural Network Region-based Convolutional Neural Networks Pose-based Convolutional Neural Networks 3D Convolutional Neural Networks Recurrent Neural Network Graphical Processing Unit Fully-connected Camera kinect với góc nhìn Camera kinect với góc nhìn Camera kinect với góc nhìn Camera kinect với góc nhìn Camera kinect với góc nhìn Mạng neural tích chập Mạng neural tích chập vùng Mạng neural tích chập dựa hình dáng Mạng neural tích chập chiều Mạng neural tích chập hồi quy Bộ xử lý đồ họa (Lớp) liên kết đầy đủ DANH MỤC CÁC BẢNG Bảng Ví dụ ma trận nhầm lẫn 13 Bảng Số lượng mẫu liệu cử 30 Bảng Chuẩn hóa số lượng frame cử 36 Bảng Ví dụ ma trận nhầm lẫn huấn luyện liệu 12 cử cho đối tượng 40 Bảng Kết C3D nguyên liệu gốc cử Đơn vị: % 40 Bảng Kết C3D nguyên liệu gốc 12 cử Đơn vị: % 41 Bảng Ma trận nhầm lẫn với liệu 12 cử chỉ, góc nhìn K1, đối tượng Thủy 42 Bảng Kết C3D liệu làm Đơn vị: % 43 Bảng Kết C3D liệu cử làm tiền xử lý Đơn vị: % 44 Bảng 10 Kết C3D liệu 12 cử sau tiền xử lý Đơn vị: % 44 Bảng 11 Kết C3D liệu tăng cường cử Đơn vị: % 46 Bảng 12 Kết C3D với liệu video phân vùng bàn tay Đơn vị: % 46 Bảng 13 So sánh kết C3D qua phương pháp I) Làm liệu, II) phương pháp I + kéo vùng bàn tay giữa, III) phương pháp II + tăng cường liệu, IV) phương pháp III + phân đoạn ảnh Đơn vị: % 47 Bảng 14 Kết C3D sau giảm số lượng neural FC6, FC7 xuống 2048 Đơn vị: % 48 Bảng 15 Kết C3D FC6, FC7 1024 neural Đơn vị: % 49 Bảng 16 Kết C3D số lọc conv2a 64 Đơn vị: % 49 Bảng 17 Kết C3D với FC6, FC7 có 2048 đồng thời kích thước đầu vào 97 Đơn vị: % 50 Bảng 18 Kết C3D với liệu đầu vào 65x65 Đơn vị: % 51 Bảng 19 Kết C3D với FC6, FC7 2048 num_frame =14 Đơn vị: % 52 Bảng 20 Kết C3D với FC6, FC7 = 2048 num_frame =12 Đơn vị: % 53 Bảng 21 So sánh kết thử nghiệm phương pháp I) C3D nguyên bản, II) với số lượng neural FC6, FC7 2048, III) giống II + kích thước đầu vào 97x97, IV) giống III + sử dụng 12 frames đầu vào Đơn vị: % 54 DANH MỤC HÌNH VẼ, ĐỒ THỊ Hình Bộ liệu chữ viết tay mnist 10 Hình Hình biểu diễn mơ hình học chưa khớp (bên trái), học vừa khớp (ở giữa) học khớp (bên phải) 12 Hình Minh họa thực phép toán nhân chập 15 Hình Cấu trúc mạng CNN 16 Hình Mơ tả trường tiếp nhận cục 5x5 17 Hình Tạo neural lớp ẩn 18 Hình Dịch lọc (filter) qua cột để tạo neural ẩn thứ 18 Hình Minh họa cho max-pooling 19 Hình Minh họa mạng CNN đơn giản với lớp FC gồm 10 neural tương ứng với 10 nhãn đầu 20 Hình 10 Các bước xử lý hệ thống nhận dạng sử dụng đặc trưng thiết kế tay 22 Hình 11 Ví dụ lọc majority filter 24 Hình 12 Minh họa phép tốn tích chập chiều [1] 27 Hình 13 Kiến trúc chi tiết mạng C3D nguyên [1] 28 Hình 14 Giải pháp thu thập liệu cử sử dụng camera Kinect 29 Hình 15 Minh họa cách thực cử 30 Hình 16 Cử 1_ON_OFF 31 Hình 17 Cử 2_UP 32 Hình 18 Cử 3_DOWN 32 Hình 19 Cử 4_LEFT 32 Hình 20 Cử 5_RIGHT 33 Hình 21 Cử 6_PUSH 33 Hình 22 Cử 7_PULL 33 Hình 23 Cử 8_ROTATE_RIGHT 34 Hình 24 Cử 9_ROTATE_LEFT 34 Hình 25 Cử 10_SCISSORS_UP 34 Hình 26 Cử 11_SCISSORS_RIGHT 35 Hình 27 Cử 12_SCISSORS_LEFT 35 Hình 28 Ví dụ đồ thị hàm lỗi huấn luyện 39 Hình 29 Ví dụ đồ thị biểu diễn độ xác mơ hình lúc huấn luyện 39 Hình 30 Xóa nhiễu (người) background 42 Hình 31 Các động tác sai thực cử 5_RIGHT đối tượng Tân 43 Hình 32 Một số hành động liệu UCF101[] 43 Hình 33 Tiền xử lý liệu cách cho vùng bàn tay đối tượng vào khung hình 44 Hình 34 Ví dụ vùng bàn tay bị trình quay video đối tượng Thuần 45 Hình 35 Tăng cường ảnh cách tịnh tiến ảnh hướng khác 45 Hình 36 Ảnh gốc mặt nạ tương ứng dùng để phân đoạn bàn tay 46 Hình 37 Kiến trúc C3D sau sửa số lượng neural FC6, FC7 Các phần thay đổi so với C3D ngun gốc (Hình 13) tơ đậm 48 Hình 38 Cấu trúc C3D với kích cỡ liệu đầu vào 97x97 Các thay đổi so với C3D nguyên gốc (Hình 13) tô đậm 50 Hình 39 Cấu trúc mạng C3D với kích cỡ liệu đầu vào 65x65 Các thay đổi so với C3D nguyên gốc (Hình 13) tơ đậm 51 Hình 40 Cấu trúc mạng C3D sử dụng 14 frames đầu vào Các thay đổi so với C3D nguyên gốc (Hình 13) tô đậm 52 Hình 41 Cấu trúc mạng C3D sử dụng 12 frames đầu vào Các thay đổi so với C3D ngun gốc (Hình 13) tơ đậm 53 CHƯƠNG 1: ĐẶT VẤN ĐỀ 1.1 Bài toán nhận dạng cử tay Tương tác người - máy lĩnh vực nghiên cứu thu hút nhiều quan tâm nhà khoa học giới nước thời gian gần Mục tiêu nghiên cứu nhằm hướng tới hệ tương tác người – máy tiệm cận với tương tác người với người, nghĩa dùng phương tiện tương tác thơng qua cử chỉ, điệu bộ, tiếng nói, v.v Hiện tại, người chủ yếu tương tác với máy tính thơng qua chuột bàn phím Với phát triển nhanh chóng cơng nghệ khoa học máy tính, người ta muốn có tương tác dễ dàng hơn, nhanh hơn, tiện lợi cho người sử dụng giống sử dụng cử thông thường người tiếng nói Trên thực tế, số kỹ thuật lĩnh vực Thị giác máy tính Học máy cho phép máy tính biểu diễn nhận dạng cử tay hay giọng nói người Bài toán nhận dạng hoạt động người toán quan trọng lĩnh vực tương tác người - máy Đây lĩnh vực nghiên cứu đầy tiềm mở nhiều ứng dụng theo dõi giám sát giải trí Trong đó, vấn đề nhận dạng cử tay người đóng vai trị đặc biệt quan trọng việc xây dựng ứng dụng thực tiễn giúp ích cho đời sống người (ví dụ sử dụng cử tay để điều khiển thiết bị nhà thông minh) Tuy nhiên nay, nghiên cứu nhận dạng cử tay chưa trọng tới việc nghiên cứu ảnh hưởng góc nhìn tới việc nhận dạng Đây vấn đề quan trọng, phương pháp tốt góc nhìn chưa tốt góc nhìn khác Do vậy, vấn đề cấp thiết thiết kế mơ hình xử lý tốt ảnh hưởng góc nhìn tới việc nhận dạng cử tay Với ý nghĩa tính cấp thiết việc phát nhận dạng tự động cử tay người, luận văn hướng đến nghiên cứu phát triển phương pháp nhận dạng cử tay người từ liệu video đánh giá phương pháp nhiều góc nhìn khác Mặc dù có nhiều phương pháp khác đề xuất cho toán nhận dạng cử tay người dựa tính chất đặc trưng biểu diễn hoạt động hay giải thuật phân lớp sử dụng, luận văn tập trung nghiên cứu phương pháp học sâu để giải toán nhận dạng cử bàn tay người từ video góc nhìn khác Các kỹ thuật học sâu chứng minh hiệu toán nhận dạng, phân lớp đối tượng ảnh tĩnh Thời gian gần đây, kỹ thuật dần nghiên cứu cho toán nhận dạng hoạt động từ video Luận văn tập trung nghiên cứu tìm hiểu kỹ thuật C3D (convolutional 3D) đề xuất Du Tran đồng nghiệp trình bày tài liệu tham khảo [1] 1.2 Mục tiêu bố cục luận văn Luận văn nghiên cứu kỹ thuật sở đánh giá tính hiệu loại liệu cử động bàn tay người, đồng thời trả lời hai câu hỏi đặt ra: (1) Mơ hình C3D thử nghiệm đạt hiệu cao liệu lớn UCF101, Sport1M Liệu có cịn tốt với liệu nhỏ liệu cử với góc nhìn khác hay 12 cử góc nhìn khơng? Liệu có phương pháp biến đổi liệu phù hợp để C3D học tốt khơng? (2) Có thể giảm nhẹ cấu trúc C3D nguyên cho việc tối ưu hiệu hệ thống khơng? Ngồi để nâng cao hiệu C3D, luận văn nghiên cứu thực số cải tiến cách lấy mẫu frames tiền xử lý liệu tăng cường liệu Các thực nghiệm thực hai liệu: 1) đối tượng thực loại cử góc nhìn khác nhau, 2) đối tượng thực 12 loại cử góc nhìn khác Kết cho thấy phương pháp biến đổi liệu đề xuất thực giúp tăng độ xác hệ thống, đồng thời giảm nhẹ kích thước mơ hình mà cho kết tốt Tuy vậy, C3D cho kết khả quan góc nhìn với liệu kể Cần thu thập thêm nhiều mẫu huấn luyện muốn cải thiện chất lượng mơ hình với góc nhìn khác Đề tài thực viện nghiên cứu MICA hướng dẫn TS Đinh Viết Sang Cấu trúc luận văn gồm chương trình bày vấn đề sau:  Chương 1: Đặt vấn đề, giới thiệu mục tiêu bố cục luận văn  Chương 2: Giới thiệu sở lý thuyết (học máy, mạng neural, mạng neural tích chập)  Chương 3: Giới thiệu nghiên cứu liên quan đến toán nhận dạng cử tay mạng neural tích chập C3D  Chương 4: Các kết thực nghiệm mơ hình C3D Đầu tiên đưa mơ tả liệu thử nghiệm, môi trường thực nghiệm, phương pháp tiền xử lý liệu, độ đo đánh giá cơng nghệ sử dụng Sau đánh giá kết thử nghiệm với  Kết luận: đưa kết luận kết đạt luận văn định hướng phát triển cho tốn trung vào chủ thể cách kéo vùng bàn tay khung hình áp dụng cắt khung hình (center-crop) cho ảnh lớp đầu vào mạng giống Hình 33 Bảng cho ta thấy kết việc làm Hình 33 Tiền xử lý liệu cách cho vùng bàn tay đối tượng vào khung hình Bảng Kết C3D liệu cử làm tiền xử lý Đơn vị: % clean_pre K1 K3 82.03 K1 K3 50.76 K5 30.16 Trung bình Single-view 90.72 Trung bình Cross-view 61.28 K5 65.82 93.85 76 65.39 79.56 96.29 Ta thấy độ xác trung bình single-view cross-view mơ hình cải thiện dù khơng nhiều Trong độ xác việc huấn luyện kiểm thử K1 cải thiện tốt (tăng ~ 4% từ 78.67% lên 82.03%) Điều giải thích vùng tay chuyển động góc nhìn K1 bị ảnh hưởng lớn kích thước đối tượng (đối tượng cao vùng bàn tay trình lấy mẫu Hình 34) Nhờ việc kéo vùng bàn tay hình sai khác vùng chuyển động đối tượng đi, qua mơ hình có khả học tốt Bảng 10 Kết C3D liệu 12 cử sau tiền xử lý Đơn vị: % original_pre K1 K2 K3 K4 K5 66.2 K1 19.44 25.46 44.91 28.24 67.59 K2 17.59 54.63 20.83 28.7 75 K3 24.07 42.13 26.85 59.26 75.93 K4 25.46 21.76 37.04 59.26 86.11 K5 21.3 20.37 55.09 35.19 Trung bình Single-view: 74.17 Trung bình Cross-view: 33.38 Trung bình Total-view: 41.54 44 Hình 34 Ví dụ vùng bàn tay bị trình quay video đối tượng Thuần Áp dụng phương pháp tương tự với liệu 12 cử chỉ, độ xác cross-view C3D cải thiện rõ rệt, độ xác single-view có giảm chút Bảng 10 cho thấy điều Hình 35 Tăng cường ảnh cách tịnh tiến ảnh hướng khác Ở thử nghiệm tiếp theo, liệu tăng cường (augmentation) cách dùng phép tịnh tiến dịch chuyển ảnh đến vị trí khác Hình 35 Bằng việc này, liệu huấn luyện tăng lên gấp lần Trong xử lý ảnh cịn có nhiều phương pháp tăng cường liệu khác lật trái phải (flip horizontal), lật xuống (flip vertical), xoay ảnh (rotation), co dãn (scale)… nhiên phương pháp không phù hợp với liệu toán Bảng 11 cho thấy kết việc làm 45 Bảng 11 Kết C3D liệu tăng cường cử Đơn vị: % clean_pre_aug K1 K3 80.48 K1 K3 39.63 K5 35.44 Trung bình Single-view: 91.85 Trung bình Cross-view: 67.19 K5 75.06 97.08 82.73 77.54 92.75 98 Như phương pháp tăng cường ảnh giúp cải thiện nhiều độ xác mơ hình, đặc biệt cross-view Ở thử nghiệm cuối cùng, sau sử dụng phương pháp xử lý liệu trên, tiến hành phân đoạn (segment) vùng bàn tay ảnh đánh giá mơ hình C3D Lúc ta chia toán nhận dạng thành bước : - Bước 1: Phân vùng bàn tay thuật tốn ví dụ Mask R-CNN [26] - Bước 2: Đưa ảnh phân vùng vào nhận dạng Hình 36 minh họa chuỗi hình ảnh cử vùng bàn tay phân đoạn khung hình cách thủ cơng Hình 36 Ảnh gốc mặt nạ tương ứng dùng để phân đoạn bàn tay Bảng 12 thể hiển kết phân lớp sử dụng C3D nguyên liệu video khung hình phân vùng tay Bảng 12 Kết C3D với liệu video phân vùng bàn tay Đơn vị: % segmented K1 K3 89.9 K1 K3 50.67 K5 42.49 Trung bình Single-view 94.11 Trung bình Cross-view 70.02 K5 65.37 99.38 93.29 54.09 89.84 99.05 Ta thấy kết phân đoạn bàn tay tăng lên ấn tượng so với liệu gốc Cụ thể single-view, độ xác tăng gần 3% từ 91.85% lên 94.11% Tương tự, cross-view, độ xác tăng gần 3% từ 67.19% đến 70.02% Như nhận thấy yếu tố có ảnh hưởng đến kết nhận dạng cử chỉ, cảnh 46 có đối tượng chuyển động bàn tay Tuy mạng C3D học thông tin không gian thời gian vầ nhiễu (ánh sáng thay đổi, blur motion) Các đánh giá cross view cho thấy hiệu C3D tăng rõ rệt khơng có ảnh hưởng Hình 13 So sánh kết chạy C3D với: I) Làm liệu II) phương pháp I kéo vùng bàn tay giữa, III) phương pháp II + tăng cường liệu , IV) phương pháp III + phân đoạn ảnh Đơn vị: % Train Test K1 I II K3 III IV I II K5 III IV I II III IV K1 78.67 82.03 80.48 89.90 67.83 65.82 75.06 65.37 72.44 65.39 77.54 54.09 K3 44.42 50.76 39.63 50.67 94.46 93.85 97.08 99.38 73.44 79.56 92.75 89.84 K5 39.11 30.16 35.44 42.49 68.63 99.05 76 82.73 93.29 94.74 96.29 98 Qua ví dụ ta thấy khả dự đốn mạng C3D nhiều mơ hình học máy khác phụ thuộc lớn vào liệu Một liệu tốt liệu có nhiễu, đa dạng mẫu xử lý phù hợp với cách học mơ hình Trong phần tiếp tơi trình bày số phương pháp thay đổi cấu trúc kích thước khối liệu vào C3D để tùy biến mạng phù hợp với tập liệu cho 4.4.3 Phương pháp C3D với thay đổi kiến trúc mạng so với mơ hình C3D ngun Ở phần trước liệu cử 12 cử phục vụ toán cịn q nhỏ, thiếu tính đa dạng Một câu hỏi đặt là: cấu trúc C3D nguyên đánh giá phù hợp với liệu lớn Sport1M, UCF101, liệu đơn giản hóa cấu trúc để mơ hình phù hợp với liệu nhỏ khơng? Từ tơi thử nghiệm việc giảm nhẹ cấu trúc mạng kích thước khối liệu đầu vào để kiểm tra khả học mơ hình Đầu tiên, với cấu trúc mạng C3D nguyên Hình 13, ta nhận thấy có xấp xỉ 50 triệu tham số mạng, chiếm 2/3 số lượng tham số (78 triệu) nằm lớp FC Với tham số thuộc kiểu liệu float32, số lượng tham số chiếm 312 Mb Trên thiết bị có phần cứng giới hạn (Edge devices) kích thước mơ hình q lớn khó để lưu trữ cập nhật lúc cần thiết Từ vấn đề đó, tơi thử nghiệm giảm số lượng neural lớp FC7, FC8 nửa để tạo cấu trúc mạng Hình 37 Ta thấy số lượng tham số mạng khoảng 48.5 triệu, xấp xỉ 0.62 số lượng tham số C3D nguyên bản, từ kích thước lưu trữ mơ hình giảm nhiều (193.4 Mb) Độ xác mơ hình lúc cho Bảng 13 47 Hình 37 Kiến trúc C3D sau sửa số lượng neural FC6, FC7 Các phần thay đổi so với C3D ngun gốc (Hình 13) tơ đậm Bảng 14 Kết C3D sau giảm số lượng neural FC6, FC7 xuống 2048 Đơn vị: % fc6_fc7_2048 K1 K3 88.44 K1 K3 51.83 K5 51.63 Trung bình Single-view 94.76 Trung bình Cross-view 69.95 K5 62.18 96.77 88.72 70.52 94.83 99.07 Độ xác mơ hình tùy biến ấn tượng, kết single-view tăng lên rõ rệt (xấp xỉ 3% từ 91.85% lên 94.76%), độ xác gần đạt tuyệt đối huấn luyện kiểm thử góc nhìn K5 (99.07%) Một lưu ý thay đổi cấu trúc mạng để mơ hình đạt độ xác cao, tơi có huấn luyện lại (pretrained) C3D liệu UCF101 đạt độ xác 77.26%, thấp gần 3% so với C3D nguyên Sau áp dụng học chuyển tiếp làm tham số Tiếp theo thử giảm số lượng neural lớp FC từ 2048 xuống cịn 1024 Độ xác mơ hình lúc cho Bảng 14 48 Bảng 15 Kết C3D FC6, FC7 1024 neural Đơn vị: % fc6_fc7_1024 K1 K3 83.94 K1 K3 49.99 K5 51.55 Trung bình Single-view 92.60 Trung bình Cross-view 60.36 K5 32.89 95.66 88.89 47.42 91.42 98.20 Như vậy, khả dự đoán C3D bị giảm mạnh số lượng neural lớp FC không đủ nhiều Vì vậy, thử nghiệm tơi giữ ngun mơ hình mạng với FC6, FC7 có 2048 neural Ở thử nghiệm giảm số neural lớp FC trên, C3D giảm đáng kể số lượng tham số cịn khối lượng tính tốn mạng khơng thay đổi Theo Hình 37, cột cuối thể khối lượng tính tốn (computation cost) mạng Khối lượng tính tốn tính cơng thức sau: 𝐷𝑘 ∗ 𝐷𝑘 ∗ 𝑀 ∗ 𝑁 ∗ 𝑃 ∗ 𝐷𝐹 ∗ 𝐷𝐹 Trong Dk kích thước lọc, M số kênh đầu vào liệu, N số kênh đầu liệu, P số frame lấy mẫu, DF kích cỡ feature map đầu Ta nhận thấy khối lượng tính tốn lớp conv2a conv3b xấp xỉ 11 triệu, chiếm khoảng 30% C3D cho lớp Từ tơi có thử giảm số lượng lọc (filter) lớp conv2a xuống nửa (từ 128 xuống 64) để kiểm tra khả học mơ hình Kết cho Bảng 15: Bảng 16 Kết C3D số lọc conv2a 64 Đơn vị: % fc6_fc7_2048_conv2a_64 K1 K1 K3 K5 Trung bình Single-view 92.17 Trung bình Cross-view 60.96 K3 88.58 60.62 45.03 K5 50.47 94.52 74.88 44.38 90.37 93.40 Như độ xác single-view khơng thay đổi Tuy nhiên độ xác cross-view giảm nhiều so với Bảng 13 Từ ta thấy kiến trúc C3D nguyên thử nghiệm qua nhiều thí nghiệm để tìm số lượng lọc tối ưu cho lớp, khó để thay đổi vài lớp để đạt hiệu cao Do thử nghiệm số lượng lọc lớp convolution giữ nguyên theo C3D nguyên Trong phương pháp khác làm giảm độ phức tạp mô hình, tơi thử nghiệm giảm kích thước khối liệu đầu vào (input data) mạng Như ta biết, C3D nguyên bản, kích thước liệu đầu vào 16 x 112 x 112 16 số lượng frame đưa vào, 112 chiều dài chiều rộng (spatial dimension) frame Đầu tiên, thử giảm chiều 49 rộng, chiều dài frame từ 112 xuống cịn 97, 97 kích cỡ nhỏ frame kích cỡ feature map đầu vào cho FC6 4x4 Hình 38 Kết huấn luyện C3D lúc UCF101 76.94%, giảm nhẹ khoảng 3% so với kích cỡ đầu vào 112 Sau tơi áp dụng học chuyển tiếp liệu cử thu kết Bảng 16 Hình 38 Cấu trúc C3D với kích cỡ liệu đầu vào 97x97 Các thay đổi so với C3D nguyên gốc (Hình 13) tơ đậm Bảng 17 Kết C3D với FC6, FC7 có 2048 đồng thời kích thước đầu vào 97 Đơn vị: % fc6_fc7_2048_crop_97 K1 K1 K3 K5 Trung bình Single-view 91.78 Trung bình Cross-view 66.92 K3 85.19 59.09 54.74 K5 42.89 94.72 89.9 54.6 90.35 95.44 Như độ xác C3D giảm nhẹ so với Bảng 13, đặc biệt cross-view (từ 69.95% xuống 66.92%) Liệu giảm nhẹ kích cỡ kết nào? Để ý kích cỡ feature map FC6 cịn 3x3 thay 4x4 chiều dài, chiều rộng nhỏ nhât kích liệu đầu vào 65 với cấu trúc Hình 39 Khối lượng tính tốn C3D giảm nhiều, 14 tỷ, khoảng 37.7% so với ban đầu Lúc này, kết huấn luyện C3D UCF101 giảm rõ rệt, 70.05% Kết C3D chạy liệu cử cho Bảng 17 50 Hình 39 Cấu trúc mạng C3D với kích cỡ liệu đầu vào 65x65 Các thay đổi so với C3D nguyên gốc (Hình 13) tơ đậm Bảng 18 Kết C3D với liệu đầu vào 65x65 Đơn vị: % fc6_fc7_2048_crop_65 K1 K1 K3 K5 Trung bình Single-view 87.74 Trung bình Cross-view 57.12 K3 78.19 45.97 39.82 K5 48.01 91.21 78.6 42.46 82.5 93.64 Rõ ràng kích thước đầu vào q nhỏ khả dự đốn mạng C3D bị giảm mạnh Kết chấp nhận huấn luyện kiểm thử góc nhìn dễ K3, K5 Do đó, thí nghiệm tơi giữ ngun kích thước đầu vào 97x97 Tiếp theo tơi đánh giá khả học C3D số lượng frame lấy mẫu khơng cịn 16 C3D ngun Đầu tiên, thử với số frame 14, điều kiện khác mạng giống Bảng 16 Cấu trúc C3D lúc cho Hình 40 Độ xác C3D liệu UCF101 75.33%, giảm gần 5% so với C3D nguyên Bảng 18 kết nhận diện C3D liệu cử 51 Hình 40 Cấu trúc mạng C3D sử dụng 14 frames đầu vào Các thay đổi so với C3D nguyên gốc (Hình 13) tơ đậm Bảng 19 Kết C3D với FC6, FC7 2048 num_frame =14 Đơn vị: % fc6_fc7_2048_num_14 K1 K3 85.34 K1 K3 51.23 K5 50.34 Trung bình Single-view 91.72 Trung bình Cross-view 66.08 K5 60.8 94.77 84.99 60.98 88.16 95.07 Ta thấy độ xác mơ hình trung bình giảm nhẹ với single-view crossview Điều hiểu số lượng frame lấy mẫu tức khả biểu diễn cử mơ hình bị giảm xuống kết dự đốn thấp Tuy vậy, độ xác giảm nhỏ liệu đơn giản, khơng phức tạp UCF101 Trong thử nghiệm cuối cùng, lấy mẫu 12 frames từ video Cấu trúc C3D cho Hình 41 Khối lượng tính tốn mơ hình lúc cịn khoảng 28.4 tỷ, tức giảm gần 24% so với C3D nguyên gốc Kết dự đoán C3D UCF101 lúc 74.29%, giảm gần 1% so với việc lấy mẫu 14 frames Bảng 19 cho ta kết C3D cử 52 Hình 41 Cấu trúc mạng C3D sử dụng 12 frames đầu vào Các thay đổi so với C3D nguyên gốc (Hình 13) tô đậm Bảng 20 Kết C3D với FC6, FC7 = 2048 num_frame =12 Đơn vị: % fc6_fc7_2048_num_12 K1 K3 86.01 K1 K3 39.33 K5 45.42 Trung bình Single-view 91.48 Trung bình Cross-view 64.15 53 K5 61.78 93.67 85.39 61.8 91.16 94.77 Hình 21 So sánh kết chạy C3D: I) C3D nguyên II) Với FC7, FC8 = 2048 III) giống II + kích thước đầu vào 97x97, IV) giống III + sử dụng 12 frames video Đơn vị: % Train K1 Test I K1 89.9 II K3 III IV I II K5 III IV I II III IV 54.6 61.80 K3 50.67 51.83 59.09 39.33 99.38 96.77 94.72 93.67 89.84 94.83 90.35 91.16 K5 42.49 51.63 54.74 45.42 93.29 88.72 89.90 85.39 99.05 99.07 95.44 94.77 88.44 85.19 86.01 65.37 62.18 42.89 61.78 54.09 70.52 Như kết giảm nhẹ single-view (từ 91.72% xuống 91.48%) Trên cross-view kết giảm gần 2% nhiều Từ ta thấy dù có giảm nhẹ kiến trúc mạng cách thay đổi số lượng neural lớp FC kích cỡ liệu kết nhận dạng mơ hình góc nhìn tốt Sau nhận xét rút từ thử nghiệm trên:  Khả học mơ hình học máy nói chung học sâu nói riêng phụ thuộc lớn vào liệu Bằng việc loại bỏ nhiễu, tăng cường số lượng mẫu học hay làm cho mơ hình tập trung vào chủ thể cần học với phương pháp tiền xử lý, phân đoạn… phù hợp ta làm tăng rõ rệt khả dự đốn mơ hình Tuy nhiên, khả cho phép, ta nên làm cho liệu đa dạng có thể, phương pháp giải pháp tốt trường hợp liệu đa dạng  Khi chuyển mơ hình dự đốn từ liệu với nhiều lớp UCF101 (101 lớp) sang liệu lớp cử chỉ, 12 cử việc giảm số lượng neural lớp FC có hiệu vừa giúp mơ hình nhẹ nhiều (chỉ 62% so với C3D nguyên số lượng neural FC6, FC7 giảm nửa) mà khả học mơ hình tốt (độ xác chí cịn cao trường hợp FC6, FC7 2048 neural)  Các tác giả [1] thực nhiều thử nghiệm số lượng lớp convolution, số lượng lọc lớp… nên việc thay đổi tham số khó để tạo mơ hình hiệu Tuy nhiên, ta thực số thay đổi nhỏ lớp cần tính tốn nhiều để giảm bớt thời gian xử lý cho mơ hình giống cách làm với conv2a (giảm từ 128 lọc xuống 64 lọc)  Việc giảm kích thước khối liệu đầu vào tỏ hiệu với liệu nhỏ, chủ thể chuyển động phần ảnh Các phương pháp áp dụng giảm kích cỡ chiều dài, chiều rộng frame giảm số lượng frame đưa vào Đây cách hữu hiệu việc giảm khối lượng tính tốn mơ hình 54  Mơ hình C3D thử nghiệm cuối có số lượng tham số 62% khối lượng tính tốn cịn 76% so với C3D nguyên nhiên độ xác liệu cử (đã xử lý phần 2) giảm gần 3% với single-view 6% với cross-view Mặc dù vậy, kết cao thử nghiệm C3D nguyên với liệu gốc phần  Do có q số mẫu nên kết mơ hình C3D liệu 12 cử thấp, từ khó đánh giá ảnh hưởng phương pháp tối ưu kể Việc nghiên cứu mơ hình phù hợp để nhận dạng hành động từ video với liệu nhỏ đề tài nghiên cứu mở cần đẩy mạnh tương lai 55 KẾT LUẬN Kết đạt Trong q trình thực luận văn, tơi tìm hiểu thử nghiệm kiến trúc C3D cho việc nhận dạng hoạt động nhiều góc nhìn khác nhau, đồng thời cải thiện chất lượng liệu tìm kiếm mơ hình tối ưu với liệu Kết cho thấy phương pháp xử lý liệu nêu tỏ thực hiệu Ngoài ra, phương pháp giảm nhẹ độ phức tạp mơ hình làm cho mơ hình C3D nhẹ nhiều so với mơ hình ngun bản, đồng thời khả dự đốn mơ hình không giảm nhiều, liệu huấn luyện kiểm thử góc nhìn Những điểm hạn chế Các thử nghiệm liệu cử cho kết khả quan Tuy nhiên, mơ hình C3D cịn lớn nên số lượng thử nghiệm với liệu 12 cử hạn chế Trong trường hợp liệu lớn hơn, cần nghiên cứu sử dụng chiến thuật huấn luyện kiểm thử khác để vừa giảm đáng kể số lượng thí nghiệm mà kiểm tra xác khả dự đốn mơ hình Luận văn chưa tìm hiểu hướng nghiên cứu mở rộng kết hợp thông tin ảnh RGB với thông tin luồng quang học hay thông tin độ sâu điểm ảnh xuất từ Kinect Hướng phát triển Từ điểm đạt hạn chế nêu ra, hướng phát triển luận văn tìm đặc trưng tốt góc nhìn thay đổi Ngồi hướng triển vọng tương lai thực pha phân đoạn bàn tay trước đưa liệu vào phân lớp Các thông tin chiều sâu luồng quang học nên thêm vào để tăng độ xác mơ hình 56 TÀI LIỆU THAM KHẢO Tran D., Bourdev L., Fergus R., et al (2015) Learning Spatiotemporal Features with 3D Convolutional Networks IEEE, 4489–4497, 4489–4497 Qing Chen, El-Sawah A., Joslin C., et al (2005) A dynamic gesture interface for virtual environments based on hidden markov models IEEE, 109–114, 109–114 Chen X and Koskela M (2013) Online RGB-D gesture recognition with extreme learning machines ACM Press, 467–474, 467–474 Doan H.-G., Vu H., and Tran T.-H (2017) Dynamic hand gesture recognition from cyclical hand pattern IEEE, 97–100, 97–100 Burges C.J.C (1998) A Tutorial on Support Vector Machines for Pattern Recognition Data Min Knowl Discov, 2(2), 121–167 Gkioxari G., Girshick R., and Malik J (2015) Contextual Action Recognition with R*CNN IEEE, 1080–1088, 1080–1088 Cheron G., Laptev I., and Schmid C (2015) P-CNN: Pose-Based CNN Features for Action Recognition IEEE, 3218–3226, 3218–3226 Simonyan K and Zisserman A Two-Stream Convolutional Networks for Action Recognition in Videos 9 Ji S., Xu W., Yang M., et al (2013) 3D Convolutional Neural Networks for Human Action Recognition IEEE Trans Pattern Anal Mach Intell, 35(1), 221–231 10 Molchanov P., Gupta S., Kim K., et al (2015) Hand gesture recognition with 3D convolutional neural networks IEEE, 1–7, 1–7 11 Online Detection and Classification of Dynamic Hand Gestures with Recurrent 3D Convolutional Neural Networks - IEEE Conference Publication accessed: 05/22/2018 12 Camgoz N.C., Hadfield S., Koller O., et al (2016) Using Convolutional 3D Neural Networks for User-independent continuous gesture recognition IEEE, 49–54, 49–54 13 Bishop C.M (2006), Pattern recognition and machine learning, Springer, New York 14 Becker S and Lecun Y (1989) Improving the convergence of back-propagation learning with second-order methods Proc 1988 Connect Models Summer Sch San Mateo 57 15 Krizhevsky A., Sutskever I., and Hinton G.E (2012) ImageNet classification with deep convolutional neural networks Commun ACM, 60(6), 84–90 16 Simonyan K and Zisserman A (2014) Very Deep Convolutional Networks for LargeScale Image Recognition ArXiv14091556 Cs 17 [1409.4842] Going Deeper with Convolutions , accessed: 05/26/2018 18 Feichtenhofer C., Pinz A., and Zisserman A (2016) Convolutional Two-Stream Network Fusion for Video Action Recognition IEEE, 1933–1941, 1933–1941 19 Beh J., Han D., and Ko H (2014) Rule-based trajectory segmentation for modeling hand motion trajectory Pattern Recognit, 47(4), 1586–1601 20 Brox T., Bruhn A., Papenberg N., et al (2004) High Accuracy Optical Flow Estimation Based on a Theory for Warping Computer Vision - ECCV 2004 Springer Berlin Heidelberg, Berlin, Heidelberg, 25–36 21 Khong V.M and Tran T.H (2018) Improving Human Action Recognition with TwoStream 3D Convolutional Neural Network 2018 1st International Conference on Multimedia Analysis and Pattern Recognition (MAPR), 1–6, 1–6 22 Ng J.Y.-H., Hausknecht M., Vijayanarasimhan S., et al (2015) Beyond Short Snippets: Deep Networks for Video Classification ArXiv150308909 Cs 23 Jing L., Yang X., and Tian Y (2018) Video you only look once: Overall temporal convolutions for action recognition J Vis Commun Image Represent, 52, 58–65 24 Le T.L., Nguyen V.N., Tran T.T.H., et al (2013) Temporal gesture segmentation for recognition 2013 International Conference on Computing, Management and Telecommunications (ComManTel), 369–373, 369–373 25 Jia Y., Shelhamer E., Donahue J., et al (2014) Caffe: Convolutional Architecture for Fast Feature Embedding ArXiv14085093 Cs 26 He K., Gkioxari G., Dollár P., et al (2017) Mask R-CNN ArXiv170306870 Cs 27 Varol G., Laptev I., and Schmid C (2016) Long-term Temporal Convolutions for Action Recognition ArXiv160404494 Cs 58 ... thuyết (học máy, mạng neural, mạng neural tích chập)  Chương 3: Giới thiệu nghiên cứu liên quan đến toán nhận dạng cử tay mạng neural tích chập C3D  Chương 4: Các kết thực nghiệm mơ hình C3D Đầu... nhìn Camera kinect với góc nhìn Mạng neural tích chập Mạng neural tích chập vùng Mạng neural tích chập dựa hình dáng Mạng neural tích chập chiều Mạng neural tích chập hồi quy Bộ xử lý đồ họa (Lớp)... kỹ thuật học sâu (Deep learning) Một số tốn Nhận dạng cử tay người (hand gesture recognition) Trong phạm vi luận văn xin đề xuất ứng dụng mơ hình học sâu - mạng neural tích chập chiều C3D để giải

Ngày đăng: 04/12/2020, 12:31

Mục lục

  • TÀI LIỆU THAM KHẢO

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

Tài liệu liên quan