Chương 1: Tổng quan đề tài. Giới thiệu về nội dung đề tài bao gồm động lực nghiên cứu, phát biểu bài toán, mục tiêu, phạm vi của nghiên cứu và những đóng góp chính trong khóa luận. * Chương 2: Cơ sở lý thuyét.trinh bày các kiến thức va lý thuyết liên quan đến dé tài, về các khái niệm các mô hình và các công nghệ sử dụng. * Chương 3: Thiết kế hệ thống.
Trình bày về quy trình xây dựng và phân tích bộ hệ thống ứng dụng game. * Chương 4: Sản phẩm. rình bay quá trình cài đặt thực nghiệm, các thông số chỉ tiết, phương pháp đánh giá và phân tích kết quả * Chương 5: Kết luận và hướng phát triển. Tổng kết các kết quả quan trọng đã đạt được trong đề tài và hướng phát triển của đề tài trong tương lai.
Thị giác máy tính 2.1 Giới Thiệu Computer Vision hay thị giác máy tính là một lĩnh vực trí tuệ nhân tạo giúp cho máy tính xử lý khả năng nhìn, xác định và hiểu thế giới xung quanh. Đây là một lĩnh vực đang phát triển nhanh chóng với nhiều ứng dụng, bao gồmô tô tự lái, nhận dạng khuôn mặt và phân tích hình ảnh y tế. Các hệ thống thị giác máy tính thường hoạt động bằng cách chụp ảnh hoặc quay video cảnh đầu tiên. Hình ảnh hoặc video này sau đó được xử lý bằng thuật toán thị giác máy tính, giúp xác định và trích xuất các đặc điểm từ hình ảnh.
Các tính năng này sau đó được sử dụng dé phan loai đối tượng hoặc cảnh hoặc dé thực hiện các tác vụ khác như theo dõi hoặc phát hiện đối tượng. Có nhiều loại thuật toán trong thị giác máy tính khác nhau, mỗi loại có ưu điểm và điểm yếu khác nhau. Một số loại thuật toán thị giác máy tính phổ biến nhất bao gồm: PERSON I= a IMAGE SEGMENTATION OBJECT DETECTION FACIAL RECOGNITION EDGE DETECTION L — PATTERN DETECTION IMAGE CLASSIFICATION FEATURE MATCHING Beep im Hình 2.1 Những thuật toán Thị giác Máy Tinh 26 2.2 Perceptron Perceptron là một hàm toán học đơn giản lấy dữ liệu đầu vào từ một hoặc nhiều tham số, thực hiện các phép tính toán và xử lý để trả về một kết quả dau ra. Tìm trọng số perceptron được xác định trong quá trình huấn luyện bằng cách sử dung dit liệu dé đảo tạo.
inputs (+7, weighted unit step function sum =i kị / Hình 2.2 Sơ đồ của một Perception Ý nghĩa của hàm này dùng để các perceptron đưa ra được quyết định dựa vào kết quả đầu ra được trả về băng một hàm gọi là unit step function để xem đầu ra có đạt ngưỡng từ đó quyết định output.3 Ham kich hoat Ta có thé coi những chức năng nay giản don như những bộ lọc nơi xem xét có cho phép thông tin di qua nơ-ron hay là cản lại. Khi training mạng nơ-ron, thì các function kích hoạt đóng vai trò quyết định trong quá điều chỉnh độ dốc của đạo hàm.Hầu hết các hàm kích hoạt là hàm kha vi liên tục. Nếu thay đôi ở đầu vào là nhỏ và kha vi, thì sẽ có một thay đôi nhỏ ở dau ra, mọi diém trong miên đêu có đạo ham 27 nputs x1 activation function x2 net input netj SJ activation x3 transfer function Oj threshold xn Hình 2.3 So đồ của một quá trình đi qua Ham kích hoạt 2.4 Hàm Sigmoid Hàm Sigmoid là một hàm làm mịn dữ liệu và đồng thời cũng là một hàm khả vi. Các hàm Sigmoid giúp chuyền đổi các giá trị tùy ý thành tỉ lệ và được dùng dé dé phân loại nhị phân.
Hàm sigmoid ánh xa dữ liệu input thành các giá trị trong phạm vi từ 0 đến 1.5 Ứng dụng trong phát triển game Thị giác máy tính là một công nghệ đang nghiên cứu và sử dụng nhanh chóng với các giá trị trong nhiều ngành khác nhau, bao gồm cả phát triển trò chơi. Các kỹ thuật thị giác máy tính được dùng dé dé tạo trải nghiệm chơi trò chơi chân thực va hấp dẫn hơn, cũng như dé cải thiện khả năng tiếp cận trò chơi cho người chơi khuyết tật. Dưới đây là một số cách mà thị giác máy tính đang được sử dụng trong phát triển trò chơi: e Phát hiện và theo dõi đối tượng trong thời gian thực: Thị giác máy tính được dùng để để phát hiện và theo dõi các đối tượng trong thời gian thực, được dùng dé dé tạo ra trải nghiệm chơi game chân thực và hap dẫn hơn. e Nhận dạng cử chỉ: Thị giác máy tính được dùng dé dé nhận dang cử chi, được dùng dé dé điều khiển trò chơi hoặc dé tương tác với thé giới trò chơi.
Vi du: thị giác máy tinh được dùng dé dé nhận dạng cử chỉ tay dé điều khiển nhân vật trong trò chơi hoặc đê tương tác với các đôi tượng trong môi trường ảo. 28 e Nhận dạng khuôn mặt: Thị giác máy tính được dùng dé để nhận dạng khuôn mặt, được dùng dé dé cá nhân hóa trải nghiệm chơi trò chơi hoặc để cung cấp các tính năng bảo mật. e Xử lý ngôn ngữ tự nhiên: Thị giác máy tính được dùng dé dé xử lý ngôn ngữ tự nhiên, có thé thay thé và cải tiến khả năng truy cập trò chơi cho người chơi khuyết tật. e Thị giác máy tính là một công cụ mạnh mẽ được dùng dé dé tạo ra trải nghiệm chơi trò chơi thực tế hơn, sống động hơn và dễ tiếp cận hơn.
Khi công nghệ thị giác máy tính tiếp tục phát triển, có khả năng chúng ta sẽ thấy những ứng dụng thú vị và sáng tạo hơn nữa của thị giác máy tính trong phát triển trò chơi trong tương lai. Dưới đây là một số ví dụ về trò chơi sử dụng thị giác máy tính: e Trò chơi thực tế tăng cường (AR): sử dụng thị giác máy tính để phủ các đối tượng ảo lên trên thé giới thực. Điều này được dùng dé dé tạo ra trải nghiệm chơi trò chơi nhập vai và hấp dẫn hơn. Ví dụ: trò chơi "Pokémon Go" dùng thực tế tăng cường đề cho phép người chơi bắt Pokémon trong thế giới thực.
e Trò chơi thực tế ảo: Trò chơi thực tế ảo sử dụng thị giác máy tính dé tạo ra một môi trường ảo nhập vai hoàn toàn. Điêu này được dùng đê đê tạo ra trải nghiệm 29 chơi game chân thực và hấp dẫn hơn. Ví dụ: trò chơi "Half-Life: Alyx" sử dụng thực tế ảo dé cho phép người chơi khám phá một thành phó hậu tận thé.8 Trò choi Half-life Alyx (Valve) e Trò chơi điều khiển bằng cử chi: Trò chơi điều khién bằng cử chi sử dung thị giác máy tính để nhận diện và theo dõi chuyên động tay của người chơi. Điều này được dùng dé dé điều khién trò chơi hoặc dé tương tác với thế giới trò chơi.
Ví dụ: trò chơi "Just Dance" sử dụng điều khiên bằng cử chỉ dé cho phép người chơi nhảy theo nhạc.9 Tro choi Just Dance (Ubisoft) 30 Khi công nghệ thị giác máy tính tiếp tục phát triển, chúng ta hoàn toàn có thê kỳ vọng sẽ thấy những ứng dụng thú vị và sáng tạo hơn nữa của thị giác máy tính trong trò chơi trong tương lai.2 Artificial Neural Networks — ANN [BxMriea ated| Hình 2.14: Su tương đồng của noron trong não người và mang ANN. Mạng nơ-ron nhân tao (Artificial Neural Networks) hay Neural Networks (NNs) là mạng lưới thần kinh, nơi mà các liên kết chặt chẽ giữa các tầng với nhau. Được dựa trên mô hình hoạt động của thần kinh não bộ người. Mạng nơ-ron sâu — mạng học sâu (Deep Neural Network — DNN) là một mạng nơ-ron nhân tạo (Artificial Neural Networks — ANNs) với một kiến trúc phức tạp và “sâu” hơn so với mạng nơ-ron nông.
Kiên trúc của mạng nơ-ron sâu tương tự như mạng nơ-ron nhân tạo với 3 thành phân: lớp đầu vào, các lớp ân (số lượng các lớp và số lượng noron trên mỗi lớp không giới hạn) và lớp đâu ra. Kiên trúc của một mạng học sâu 3 lớp: 31 Ô SG A@À@⁄2 QPL Input Hidden Output Hình 2.15: Minh họa kiến trúc mang nơ-ron sau. Đối với mỗi nút trong một lớp của mạng, độ lớn trọng số của nút hiện được xem xét là tong độ lớn bằng số của các nút lớp đầu vào trước đó, được chuyền đến hàm kích hoạt phi tuyến tinh dé tinh trọng số. Các nút này là đầu ra của lớp trước và là đầu vào của lớp tiếp theo.
Mạng tính toán và tối ưu hóa trọng số cho từng nút trong mạng trong suốt quá trình đảo tạo. Trong các vấn liên quan đến xử lý ảnh, DNN dùng nhiều lớp dé lần lượt rút trích các đặc trưng từ thấp tới cao. Những lớp thấp sẽ phát hiện góc cạnh của ảnh, sau đó những đặc trưng này sẽ được truyền tới những lớp cao hơn (sâu hơn) dé phân biệt đối tượng rõ ràng hơn. Mặc dù DNN có khả năng xử lý bài toán phát hiện đối tượng trong ảnh, nhưng kiến trúc này cũng gặp nhiều trở ngại trong thời đại hiện nay.3 Convolutional Neural Network - CNN Mang nơ-ron tích chap (CNN) là một loại mang nơ-ron được sử dung dé xử ly các dữ liệu được biểu diễn dưới dạng các mảng có cấu trúc, như các hình ảnh.
CNN được lay cảm hứng từ cách thức xử lý hình ảnh của não bộ, trong đó các tế bào thần kinh trong vỏ thị giác chỉ phản ứng với các đặc trưng cụ thé trong hình ảnh, chăng hạn như các cạnh, góc và đường cong. CNN được cấu tạo từ các lớp, mỗi lớp gồm một số nơ-ron. Các nơ-ron trong cùng một lớp được kêt nôi với nhau thông qua các bộ lọc. Bộ lọc là các ma trận sô có kích 32 thước xác định.
Khi một bộ lọc được quét qua một hình ảnh, nó sẽ tính toán một hàm số trên các pixel trong hình ảnh. Hàm số này được gọi là hàm tích chập. Kết quả của hàm tích chập được đưa vào các nơ-ron trong lớp tiếp theo. Quá trình này được lặp lại cho đến khi hình ảnh được xử lý xong.
CNN có một số ưu điểm so với các loại mạng nơ-ron khác. Đầu tiên, CNN rất hiệu quả trong việc phát hiện các đặc trưng trong hình ảnh. Thứ hai, CNN có thé học các đặc trưng từ dữ liệu mà không cần phải được định nghĩa trước. Thứ ba, CNN có thé được áp dụng cho các hình ảnh có kích thước và độ phân giải khác nhau.
Cle ~Ï FTI— t&ñ - = | F "T T FF| — teuce | 1 IHEUT LE#4wG4 LUTION + REEL PONG CONVOLUTION + RLU | POOLING FLATT PUALT SITMAE k rh ST) j 2 k w FEATLIRE LEARNING CLASSIFICATION Hình 2.16: Kiến trúc tông quan của mô hình CNN. CNN được câu tạo từ các tầng, mỗi tầng gồm một số nơ-ron. Các nơ-ron trong cùng một tang được kêt nôi với nhau thông qua các bộ lọc.