Trang 1 NGUYỄN BÁ BẰNGNGHIÊN CỨU PHƯƠNG PHÁP HỌC MÁY CHO NHẬN DẠNG HÀNH ĐỘNG VÀ ỨNG DỤNG TRONG NHẬN DẠNG HÀNH ĐỘNG GIƠ TAY PHÁT BIỂU CỦA HỌC SINHLUẬN VĂN THẠC SĨ KHOA HỌC MÁY TÍNH Trang
CƠ SỞ LÝ THUYẾT
Lý thuyết về nhận dạng ảnh
1.1.1 Tổng quan về xử lý ảnh
Xử lý ảnh là đối tượng nghiên cứu của lĩnh vực thị giác máy, là quá trình biến đổi từ một ảnh ban đầu sang một ảnh mới với các đặc tính và tuân theo ý muốn của người sử dụng Xử lý ảnh có thể gồm quá trình phân tích, phân lớp các đối tượng, làm tăng chất lượng, phân đoạn và tách cạnh, gán nhãn cho vùng hay quá trình biên dịch các thông tin hình ảnh của ảnh Cũng như xử lý dữ liệu bằng đồ hoạ, xử lý ảnh số là một lĩnh vực của tin học ứng dụng Xử lý dữ liệu bằng đồ họa đề cập đến những ảnh nhân tạo, các ảnh này được xem xét như là một cấu trúc dữ liệu và được tạo bởi các chương trình Xử lý ảnh số bao gồm các phương pháp và kỹ thuật biến đổi, để truyền tải hoặc mã hoá các ảnh tự nhiên Mục đích của xử lý ảnh gồm: Biến đổi ảnh làm tăng chất lượng ảnh Tự động nhận dạng ảnh, đoán nhận ảnh, đánh giá các nội dung của ảnh Nhận biết và đánh giá các nội dung của ảnh là sự phân tích một hình ảnh thành những phần có ý nghĩa để phân biệt đối tượng này với đối tượng khác, dựa vào đó ta có thể mô tả cấu trúc của hình ảnh ban đầu Có thể liệt kê một số phương pháp nhận dạng cơ bản như nhận dạng ảnh của các đối tượng trên ảnh, tách cạnh, phân đoạn hình ảnh,… Kỹ thuật này được dùng nhiều trong y học (xử lý tế bào, nhiễm sắc thể), nhận dạng chữ trong văn bản
1.1.2 Quá trình xử lý ảnh
Hình 1.1 thể hiện quá trình xử lý ảnh, gồm các bước cơ bản như: Thu nhận ảnh, tiền xử lý, phân đoạn ảnh, tách các đặc tính, nhận dạng và giải thích
Thu nhận ảnh: Đây là công đoạn đầu tiên mang tính quyết định đối với quá trình xử lý ảnh Ảnh đầu vào sẽ được thu nhận qua các thiết bị như camera, sensor, máy scanner, v.v… và sau đó các tín hiệu này sẽ được số hóa Việc lựa chọn các thiết bị thu nhận ảnh sẽ phụ thuộc vào đặc tính của các đối tượng cần xử lý Các thông số
2 quan trọng ở bước này là độ phân giải, chất lượng màu, dung lượng bộ nhớ và tốc độ thu nhận ảnh của các thiết bị
Tiền xử lý: Ở bước này, ảnh sẽ được cải thiện về độ tương phản, khử nhiễu, khử bóng, khử độ lệch,v.v… với mục đích làm cho chất lượng ảnh trở lên tốt hơn nữa, chuẩn bị cho các bước xử lý phức tạp hơn về sau trong quá trình xử lý ảnh Quá trình này thường được thực hiện bởi các bộ lọc
Phân đoạn ảnh: phân đoạn ảnh là bước then chốt trong xử lý ảnh Giai đoạn này phân tích ảnh thành những thành phần có cùng tính chất nào đó dựa theo biên hay các vùng liên thông Tiêu chuẩn để xác định các vùng liên thông có thể là cùng màu, cùng mức xám v.v… Mục đích của phân đoạn ảnh là để có một miêu tả tổng hợp về nhiều phần tử khác nhau cấu tạo lên ảnh thô Vì lượng thông tin chứa trong ảnh rất lớn, trong khi đa số các ứng dụng chúng ta chỉ cần trích một vài đặc trưng nào đó, do vậy cần có một quá trình để giảm lượng thông tin khổng lồ đó Quá trình này bao gồm phân vùng ảnh và trích chọn đặc tính chủ yếu
Tách các đặc tính: Kết quả của bước phân đoạn ảnh thường được cho dưới dạng dữ liệu điểm ảnh thô, trong đó hàm chứa biên của một vùng ảnh, hoặc tập hợp tất cả các điểm ảnh thuộc về chính vùng ảnh đó Trong cả hai trường hợp, sự chuyển đổi dữ liệu thô này thành một dạng thích hợp hơn cho việc xử lý trong máy tính là rất cần thiết Để chuyển đổi chúng, câu hỏi đầu tiên cần phải trả lời là nên biểu diễn một vùng ảnh dưới dạng biên hay dưới dạng một vùng hoàn chỉnh gồm tất cả những điểm ảnh thuộc về nó Biểu diễn dạng biên cho một vùng phù hợp với những ứng dụng chỉ quan tâm chủ yếu đến các đặc trƣng hình dạng bên ngoài của đối tượng, ví dụ như các góc cạnh và điểm uốn trên biên chẳng hạn Biểu diễn dạng vùng lại thích hợp cho
Hình 1.1 Quá trình xử lý ảnh
Thu nhận ảnh Tiền xử lý Phân đoạn ảnh
Nhận dạng và giải thích Tách các đặc tính những ứng dụng khai thác các tính chất bên trong của đối tượng, ví dụ như vân ảnh hoặc cấu trúc xương của nó
Nhận dạng và giải thích: Đây là bước cuối cùng trong quá trình xử lý ảnh Nhận dạng ảnh có thể được nhìn nhận một cách đơn giản là việc gán nhãn cho các đối tượng trong ảnh Ví dụ đối với nhận dạng chữ viết, các đối tượng trong ảnh cần nhận dạng là các mẫu chữ, ta cần tách riêng các mẫu chữ đó ra và tìm cách gán đúng các ký tự của bảng chữ cái tương ứng cho các mẫu chữ thu được trong ảnh Giải thích là công đoạn gán nghĩa cho một tập các đối tượng đã được nhận biết Chúng ta cũng có thể thấy rằng, không phải bất kỳ một ứng dụng xử lý ảnh nào cũng bắt buộc phải tuân theo tất cả các bước xử lý đã nêu ở trên, ví dụ như các ứng dụng chỉnh sửa ảnh nghệ thuật chỉ dừng lại ở bước tiền xử lý Một cách tổng quát thì những chức năng xử lý bao gồm cả nhận dạng và giải thích thường chỉ có mặt trong hệ thống phân tích ảnh tự động hoặc bán tự động, được dùng để rút trích ra những thông tin quan trọng từ ảnh, ví dụ như các ứng dụng nhận dạng ký tự quang học, nhận dạng chữ viết tay v.v…
1.1.3 Ảnh và biểu diễn ảnh Ảnh trong thực tế là một ảnh liên tục cả về không gian và giá trị độ sáng Để có thể xử lý ảnh bằng máy tính thì cần thiết phải tiến hành số hóa ảnh Quá trình số hóa biến đổi các tín hiệu liên tục sang tín hiệu rời rạc thông qua quá trình lấy mẫu (rời rạc hóa về không gian) và lượng tử hóa các thành phần giá trị mà về nguyên tắc bằng mắt thường không thể phân biệt được hai điểm liền kề nhau Các điểm như vậy được gọi là các pixel (Picture Element) hay các phần tử ảnh hoặc điểm ảnh Ở đây cần phân biệt khái niệm pixel hay đề cập đến trong các hệ thống đồ họa máy tính Để tránh nhầm lẫn ta gọi khái niệm pixel này là pixel thiết bị
Khi ta quan sát màn hình (trong chế độ đồ họa), màn hình không liên tục mà gồm các điểm nhỏ, gọi là pixel Mỗi pixel gồm một tập tọa độ (x, y) và màu Như vậy mỗi ảnh là tập hợp các điểm ảnh Khi được số hóa nó thường được biểu diễn bởi mảng 2 chiều I(n,p): n là dòng và p là cột Về mặt toán học có thể xem ảnh là một
4 hàm hai biến f(x,y) với x, y là các biến tọa độ Giá trị số ở điểm (x,y) tương ứng với giá trị xám hoặc độ sáng của ảnh (x là các cột còn y là các hàng) Giá trị của hàm ảnh f(x,y) được hạn chế trong phạm vi của các số nguyên dương 0 ≤ f(x,y) ≤ fmax
Với ảnh đen trắng mức xám của ảnh có thể được biểu diễn bởi một số như sau:
𝑓 = 𝑘 ∫ 𝜆=0 ∞ 𝑐(𝜆)𝑆 𝐵𝑊 (𝜆)𝑑𝜆 (1.1) Trong đó SBW(λ ) là đặc tính phổ của cảm biến được sử dụng và k là hệ số tỷ lệ xích Vì sự cảm nhận độ sáng có tầm quan trọng hàng đầu đối với ảnh đen trắng nên SBW(λ ) được chọn giống như là hiệu suất sáng tương đối Vì f biểu diễn công suất trên đơn vị diện tích, nên nó bao giờ cũng không âm và hữu hạn 0≤ f ≤ fmax Trong đó fmax là giá trị lớn nhất mà f đạt được Trong xử lý ảnh, f được chia thang sao cho nó nằm trong một phạm vi thuận lợi nào đó Thông thường đối với ảnh xám, giá trị fmax là 255 ( 28 %6) bởi vì mỗi phần tử ảnh được mã hóa bởi một byte Khi quan tâm đến ảnh màu ta có thể mô tả màu qua ba hàm số: thành phần màu đỏ qua R(x,y), thành phần màu lục qua G(x,y) và thành phần màu lam qua B(x,y) Bộ ba giá trị R,
𝐵 = 𝑘 ∫ 𝜆=0 ∞ 𝑐(𝜆)𝑆 𝐵 (𝜆)𝑑𝜆 (1.4) Ở đó SR( λ),SG(λ ) và SB(λ ) theo thứ tự là những đặc tính phổ của các cảm biến (bộ lọc) đỏ, lục và lam R, G, B cũng không âm và hữu hạn Ảnh có thể được biểu diễn theo một trong hai mô hình: mô hình Vector hoặc mô hình Raster Mô hình Vector: Ngoài mục đích tiết kiệm không gian lưu trữ, dễ dàng hiển thị và in ấn, các ảnh biểu diễn theo mô hình vector còn có ưu điểm cho phép dễ dàng lựa chọn, sao chép, di chuyển, tìm kiếm…Theo những yêu cầu này thì kỹ thuật biểu diễn vector tỏ ra ưu việt hơn Trong mô hình này, người ta sử dụng hướng vector của các điểm ảnh lân cận để mã hóa và tái tạo lại hình ảnh ban đầu Các ảnh vector được thu nhận trực tiếp từ các thiết bị số hóa như Digitalize hoặc được chuyển đổi từ các ảnh Raster thông qua các chương trình vector hóa Mô hình Raster: là mô hình biểu diễn ảnh thông dụng nhất hiện nay Ảnh được biểu diễn dưới dạng ma trận các điểm ảnh Tùy theo nhu cầu thực tế mà mỗi điểm ảnh có thể được biểu diễn bởi một hay nhiều bit
Mô hình Raster thuận lợi cho việc thu nhận, hiển thị và in ấn Các ảnh được sử dụng trong phạm vi của đề tài này cũng là các ảnh được biểu diễn theo mô hình Raster Khi xử lý các ảnh Raster chúng ta có thể quan tâm đến mối quan hệ trong vùng lân cận của các điểm ảnh Các điểm ảnh có thể xếp hàng trên một lưới (raster) hình vuông, lưới hình lục giác hoặc theo một cách hoàn toàn ngẫu nhiên với nhau
Cách sắp xếp theo hình vuông là được quan tâm đến nhiều nhất và có hai loại: điểm 4 láng giềng (4 liền kề) hoặc 8 láng giềng (8 liền kề) Với điểm 4 láng giềng, một điểm ảnh I(i, j) sẽ có điểm kế cận theo 2 hướng i và j; trong khi đó với điểm 8 láng giềng, điểm ảnh I(i, j) sẽ có 4 điểm kế cận theo 2 hướng i, j và 4 điểm kế cận theo hướng chéo 45 0
1.1.4 Phạm vi ứng dụng của xử lý ảnh
Học sâu (Deep Learning)
1.2.1 Giới thiệu về học sâu
Học sâu là một lĩnh vực con cụ thể của học máy (Hình 1.2 [11]): một bước tiến mới trong việc học các biểu diễn từ dữ liệu, nhấn mạnh vào việc học các lớp kế tiếp của các biểu diễn ngày càng có ý nghĩa Học sâu trong học sâu không phải là một tài liệu tham khảo cho bất kỳ loại hiểu biết sâu hơn nào đạt được bằng cách tiếp cận; đúng hơn, nó đại diện cho ý tưởng về các lớp biểu diễn liên tiếp này Có bao nhiêu lớp đóng góp vào một mô hình dữ liệu được gọi là độ sâu của mô hình Các tên thích hợp khác cho trường có thể là học biểu diễn lớp và học biểu diễn phân cấp Học sâu hiện đại thường liên quan đến hàng chục hoặc thậm chí hàng trăm lớp biểu diễn liên tiếp - và tất cả chúng đều được học tự động khi tiếp xúc với dữ liệu huấn luyện Trong khi đó, các phương pháp học máy khác có xu hướng chỉ tập trung vào việc học một hoặc hai lớp biểu diễn dữ liệu; do đó, đôi khi chúng được gọi là học nông [3]
Hình 1.2 Mối quan hệ giữa AI, Machine Learning và Deep Learning
Trong học sâu, các biểu diễn theo lớp này (hầu như luôn luôn) được học thông qua các mô hình được gọi là mạng thần kinh, được cấu trúc theo các lớp theo nghĩa đen xếp chồng lên nhau Thuật ngữ mạng lưới thần kinh liên quan đến sinh học thần kinh, nhưng mặc dù một số khái niệm trung tâm trong học sâu được phát triển một phần bằng cách lấy cảm hứng từ sự hiểu biết của chúng ta về bộ não, nhưng các mô hình học sâu không phải là mô hình của bộ não Không có bằng chứng nào cho thấy bộ não thực hiện bất kỳ thứ gì giống như cơ chế học tập được sử dụng trong các mô hình học sâu hiện đại Bạn có thể bắt gặp các bài báo khoa học đại chúng tuyên bố rằng học sâu hoạt động giống như bộ não hoặc được mô phỏng theo bộ não, nhưng thực tế không phải vậy Sẽ rất khó hiểu và phản tác dụng đối với những người mới tham gia lĩnh vực này nếu nghĩ rằng học sâu có liên quan đến sinh học thần kinh theo bất kỳ cách nào; bạn không cần sự bí ẩn và bí ẩn “giống như tâm trí của chúng ta”, và bạn cũng có thể quên bất cứ điều gì bạn có thể đã đọc về mối liên hệ giả định giữa học sâu và sinh học Đối với mục đích của chúng tôi [3], học sâu là một khung toán học để học các biểu diễn từ dữ liệu
Hình 1.3 Một mạng nơ-ron sâu cho phân loại chữ số
Các biểu diễn được học bởi một thuật toán học sâu trông như thế nào? Hãy xem xét cách một mạng sâu vài lớp (xem Hình 1.3) biến đổi hình ảnh của một chữ số để nhận ra đó là chữ số nào Như bạn có thể thấy trong Hình 1.4, mạng chuyển đổi hình ảnh số thành các đặc trưng ngày càng khác biệt so với hình ảnh gốc và ngày càng nhiều thông tin về kết quả cuối cùng Bạn có thể coi mạng sâu như một hoạt động chắt lọc thông tin nhiều tầng, trong đó thông tin đi qua các bộ lọc liên tiếp và xuất hiện ngày càng tinh khiết (nghĩa là hữu ích đối với một số nhiệm vụ)
Nhiều kiến trúc học sâu khác nhau như mạng nơ-ron nhân tạo (Artificial Neural Network - ANN), mạng nơ-ron tích chập (Convolutional Neural Network - CNN) và mạng nơ-ron tái phát (Recurrent Neural Network - RNN) đã được áp dụng cho các lĩnh vực như thị giác máy tính, tự động nhận dạng giọng nói, xử lý ngôn ngữ tự nhiên, nhận dạng âm thanh ngôn ngữ và tin sinh học, chúng đã được chứng minh là tạo ra các kết quả rất tốt đối với nhiều nhiệm vụ khác nhau
Hình 1.4 Đặc trưng sâu được học bởi mô hình phân loại chữ số
1.2.2 Cách hoạt động của học sâu
Tại thời điểm này, bạn biết rằng học máy là ánh xạ các đầu vào (chẳng hạn như hình ảnh) tới các mục tiêu (chẳng hạn như nhãn “con mèo”), được thực hiện bằng cách quan sát nhiều ví dụ của đầu vào và mục tiêu Bạn cũng biết rằng các mạng nơ- ron sâu thực hiện ánh xạ đầu vào-đến-đích (input-to-target) này thông qua một chuỗi sâu các phép biến đổi dữ liệu đơn giản (các lớp) và các phép biến đổi dữ liệu này được học bằng cách tiếp xúc với các ví dụ Bây giờ hãy xem xét cụ thể quá trình học tập này diễn ra như thế nào [3]
Thông số kỹ thuật về những gì một lớp thực hiện đối với dữ liệu đầu vào của nó được lưu trữ trong các trọng số của lớp, về bản chất là một loạt các con số Về mặt kỹ thuật, phép biến đổi được thực hiện bởi một lớp được tham số hóa bởi các trọng số của nó (xem Hình 1.5) (Trọng số đôi khi còn được gọi là tham số của một lớp.) Trong ngữ cảnh này, việc học có nghĩa là tìm một tập hợp các giá trị cho trọng số của tất cả các lớp trong mạng, sao cho mạng sẽ ánh xạ chính xác đầu vào ví dụ tới các mục tiêu được liên kết của chúng Nhưng vấn đề ở đây là: một mạng nơ-ron sâu có thể chứa hàng chục triệu tham số Tìm giá trị chính xác cho tất cả chúng có vẻ như là một nhiệm vụ khó khăn, đặc biệt là khi sửa đổi giá trị của một tham số sẽ ảnh hưởng đến hành vi của tất cả các tham số khác
Hình 1.5 Một mạng nơ-ron được tham số hóa bởi các trọng số của nó
10 Để kiểm soát một cái gì đó, trước tiên bạn cần có khả năng quan sát nó Để kiểm soát đầu ra của mạng nơ-ron, bạn cần có khả năng đo lường xem đầu ra này khác xa bao nhiêu so với những gì bạn mong đợi Đây là công việc của hàm mất mát của mạng, còn được gọi là hàm mục tiêu Hàm mất mát lấy các dự đoán của mạng và mục tiêu thực (bạn muốn mạng xuất ra cái gì) và tính điểm khoảng cách, nắm bắt xem mạng đã hoạt động tốt như thế nào trong ví dụ cụ thể này (xem Hình 1.6)
Thủ thuật cơ bản trong học sâu là sử dụng điểm số này làm tín hiệu phản hồi để điều chỉnh giá trị của các trọng số một chút, theo hướng sẽ hạ thấp điểm số tổn thất cho ví dụ hiện tại (xem Hình 1.7) Việc điều chỉnh này là công việc của trình tối ưu hóa, thực hiện cái được gọi là thuật toán Lan truyền ngược: thuật toán trung tâm trong học sâu
Hình 1.6 Hàm mất mát đo lường chất lượng đầu ra của mạng
Ban đầu, các trọng số của mạng được gán các giá trị ngẫu nhiên, vì vậy mạng chỉ thực hiện một loạt các phép biến đổi ngẫu nhiên Đương nhiên, sản lượng của nó khác xa so với mức lý tưởng nên có và điểm thua lỗ theo đó rất cao Nhưng với mọi ví dụ mà mạng xử lý, các trọng số được điều chỉnh một chút theo hướng chính xác và điểm mất mát giảm xuống Đây là vòng lặp huấn luyện, được lặp lại đủ số lần (thường là hàng chục lần lặp trên hàng nghìn ví dụ), mang lại các giá trị trọng số làm giảm thiểu hàm mất mát Mạng có tổn thất tối thiểu là mạng mà đầu ra càng gần với mục tiêu càng tốt: mạng được đào tạo Một lần nữa, đó là một cơ chế đơn giản, sau khi được thu nhỏ lại, trông giống như một phép thuật.
Mạng nơ-ron
1.3.1 Khái niệm cơ bản về mạng nơ-ron
Hình 1.7 Điểm mất mát được sử dụng làm tín hiệu phản hồi để điều chỉnh trọng số
Neural Network đọc tiếng việt là mạng nơ-ron nhân tạo, đây là một chuỗi những thuật toán được đưa ra để tìm kiếm các mối quan hệ cơ bản trong tập hợp các dữ liệu Thông qua việc bắt bước cách thức hoạt động từ não bộ con người Nói cách khác, mạng nơ-ron nhân tạo được xem là hệ thồng của các tế bào thần kinh nhân tạo Đây thường có thể là hữu cơ hoặc nhân tạo về bản chất
Mạng nơ-ron có khả năng thích ứng được với mọi thay đổi từ đầu vào Do vậy, nó có thể đưa ra được mọi kết quả một cách tốt nhất có thể mà bạn không cần phải thiêt kế lại những tiêu chí đầu ra Khái niệm này có nguồn gốc từ trí tuệ nhân tạo, đang nhanh chóng trở lên phổ biến hơn trong sự phát triển của những hệ thống giao dịch điện tử
Mạng nơ-ron nhân tạo được xây dựng dựa trên cấu trúc của bộ não con người, giúp ta đưa ra một phương pháp mới trong lĩnh vực tiếp cận hệ thống thông tin Mạng nơ-ron nhân tạo có thể thực hiện các bài toán mẫu (Recognition), tối ưu, nhận dạng (Identiffication) va điều khiển (Control) cho các đối tượng tuyến tính và phi tuyến đạt hiệu quả hpn so với các phương pháp tính toán truyền thống
Mô phỏng sinh học, đặc biệt là mô phỏng nơ-ron thần kinh là một ước muốn từ lâu của nhân loại Với khoảng 10 25 nơ-ron ở não người, mỗi nơ-ron có thể nhận hàng vạn tín hiệu từ các khớp thần kinh và được coi là một cơ chế sinh học phức tạp nhất Não người có khả năng giải quyết những vấn đề như: nghe, nhìn, nói, hồi ức thông tin, phân biệt các mẫu mặc dù dữ liệu bị méo mó, thiếu hụt Não thực hiện những nhiệm vụ như vậy bởi có những phần tử xử lý tính toán gọi là nơ-ron Não phân bổ việc xử lý thông tin cho hàng tỉ nơ-ron có liên quan, điều khiển liên lạc giữa các nơ-ron Nơ-ron không ngừng nhận và truyền thông tin lẫn nhau
1.3.2 Mạng nơ-ron sinh học
Qua quá trình nghiên cứu về bộ não, người ta thấy rằng: bộ não con người bao gồm khoảng 10 11 nơ-ron tham gia vào khoảng 10 15 kết nối trên các đường truyền Mỗi đường truyền này dài khoảng hơn một mét Các nơ-ron có nhiều đặc điểm chung với các tế bào khác trong cơ thể, ngoài ra chúng còn có những khả năng mà các tế bào khác không có được, đó là khả năng nhận, xử lý và truyền các tín hiệu điện hóa trên các đường mòn nơ-ron, các con đ đường này tạo nên hệ thống giao tiếp của bộ não
Mỗi nơ-ron sinh học có 3 thành phần cơ bản (Hình 1.8 [1]):
- Thân tế bào (Cell body)
Các sợi nhánh truyền tín hiệu vào đến thân tế bào Thân tế bào tổng hợp và xử lý cho tín hiệu đi ra Sợi trục truyền tín hiệu ra từ thân tế bào này sang nơ-ron khác Điểm liên kết giữa sợi trục của nơ-ron này với sợi nhánh của nơ-ron khác gọi là synapse Liên kết giữa các nơ-ron và độ nhạy của mỗi synapse được xác định bởi quá
Hình 1.8 Cấu trúc của một nơ-ron sinh học điển hình
14 trình hóa học phức tạp Một số cấu trúc của nơ-ron được xác định trước lúc sinh ra Một số cấu trúc được phát triển thông qua quá trình học Trong cuộc đời cá thể, một số liên kết mới được hình thành, một số khác bị hủy bỏ
Như vậy nơ-ron sinh học hoạt động theo cách thức sau: nhận tín hiệu đầu vào, xử lý các tín hiệu này và cho ra một tín hiệu output Tín hiệu output này sau đó được truyền đi làm tín hiệu đầu vào cho các nơ-ron khác Dựa trên những hiểu biết về nơ- ron sinh học, con người xây dựng nơ-ron nhân tạo với hy vọng tạo nên một mô hình có sức mạnh như bộ não
1.3.3 Mạng nơ-ron nhân tạo
Nơ-ron nhân tạo (Hình 1.9) là sự rút gọn hết sức đơn giản của nơ-ron sinh học
Nó có thể thực hiện nhờ chương trình máy tính hoặc bằng mạch phần cứng Mỗi nơ- ron thực hiện hai chức năng là chức năng đầu vào và chức năng kích hoạt đầu ra Do đó ta có thể coi mỗi nơ-ron như là một đơn vị xử lý Nó được xây dựng mô phỏng theo cấu trúc của các nơ-ron sinh học Mỗi nơ-ron có một số đầu vào giống như các dây thần kinh tiếp nhận Các đầu vào này làm nhiệm vụ tiếp nhận thông tin từ các nơ- ron khác hoặc từ tập số liệu gốc vào Tương tự như nơ-ron sinh học, mỗi đầu vào của nơ-ron nhân tạo có ảnh hưởng khác nhau đối với tín hiệu ra của nơ-ron (còn gọi là kết xuất của nơ-ron) Điều này được thực hiện nhờ các hệ số được gán cho từng đầu vào-w i : trọng số của đầu vào thứ i Giá trị của w i có thể dương hay âm tương tự như việc có hai loại khớp nối trong mạng nơ-ron sinh học Nếu w i có giá trị dương thì tương đương với khớp nối kích thích còn nếu w i âm thì tương đương với khớp nối ức chế Thân nơ-ron sẽ làm nhiệm vụ tổng hợp các tín hiệu đầu vào xử lý để đưa một tín hiệu ra đầu ra của nơ-ron Quá trình xử lý, tính toán này sẽ được đề cập cụ thể ở phần sau Đầu ra của nơ-ron nhân tạo tương tự như sợi trục axon của nơ-ron sinh học Tín hiệu ra cũng có thể tách ra thành nhiều nhánh theo cấu trúc hình cây để đưa đến đầu vào của các nơ-ron khác
1.3.3.2 Mạng nơ-ron nhân tạo
Các nơ-ron nhân tạo được tổ chức thành mạng nơ-ron nhân tạo Các nơ-ron thường được sắp xếp trong mạng thành từng lớp Đầu ra của mỗi nơ-ron sẽ được nối đến đầu vào của một số nơ-ron khác theo một cấu trúc phù hợp Tuy nhiên cấu trúc mạng nơ-ron nhân tạo chưa thể đạt được độ phức tạp như mạng nơ-ron sinh học Mạng nơ-ron nhân tạo hiện chỉ mới là sự mô phỏng hết sức đơn giản cấu trúc của mạng nơ-ron sinh học
Giữa mạng nơ-ron nhân tạo và mạng nơ-ron sinh học có 3 điểm chung là:
- Mạng được xây dựng bằng các phần tử tính toán đơn giản liên kết lại với nhau một cách phức tạp và hoạt động theo nguyên tắc song song
- Chức năng của mạng được xác định qua cấu trúc mạng, quá trình xử lý bên trong các phần tử và mức độ liên kết giữa các phần tử
- Mức độ liên kết giữa các phần tử được xác định thông qua quá trình học của mạng (hay còn gọi là quá trình huấn luyện mạng) Điểm khác nhau về căn bản giữa Mạng nơ-ron nhân tạo và mạng nơ-ron sinh học là ở tốc độ tính toán, độ phức tạp và tính song song Tuy xét về tốc độ xử lý của
Hình 1.9 Mô hình nơ-ron nhân tạo
16 các máy tính hiện đại là cao hơn rất nhiều so với tốc độ xử lý của não bộ con người nhưng bộ não lại có thể đồng thời kích hoạt toàn bộ các nơ-ron để làm nhiều công việc khác nhau Điều này mạng nơ-ron nhân tạo không thể thực hiện được Với sự phát triển nhanh chóng của khoa học như hiện nay thì ta có thể hi vọng sẽ có những bước đột phá mới trong lĩnh vực mô phỏng mạng nơ-ron sinh học
1.3.3.3 Mô hình toán học của một nơ-ron nhân tạo
Dựa trên những kiến thức cơ bản về nơ-ron nhân tạo như đã trình bày ở phần trên, ta có thể xây dựng một mô hình toán học của nơ-ron nhân tạo như Hình 1.10 Các tín hiệu vào ( còn gọi là mẫu vào) p i (i=1 R) được đưa tới đầu vào của nơ-ron S tạo thành ma trận tín hiệu vào P Mỗi đầu vào của nơ-ron S sẽ có một trọng số kí hiệu là w s,i (i=1 R) và các trọng số này tạo thành một ma trận trọng số đầu vào W của nơ- ron Mức ngưỡng của nơ-ron có thể được biễu diễn trong mô hình toán học bằng hệ số bias b (gọi là thế hiệu dịch) Ta có b=- Hàm thế sau khớp nối (Post Synaptic Potential function - PSP) là tổng của các tín hiệu vào có trọng số và hệ số bias Như vậy tín hiệu vào là nnet sẽ được tính theo công thức sau:
𝑛 𝑛𝑒𝑡 = 𝑤 𝑠,1 𝑝 1 + 𝑤 𝑠,2 𝑝 2 + ⋯ + 𝑤 𝑠,𝑅 𝑝 𝑅 + 𝑏 (1.5) Viết dưới dạng ma trận sẽ là:
Xem các biểu thức trên thì ta có thể coi hệ số bias như trọng số của một đầu vào với tín hiệu bằng 1 Có một số loại nơ-ron có thể bỏ qua hệ số bias này
Hình 1.10 Mô hình toán học mạng nơ-ron nhân tạo
Hàm hoạt hoá (hay còn gọi là hàm truyền đạt) được kí hiệu là f sẽ biến đổi tín hiệu đầu vào net thành tín hiệu đầu ra nơ-ron a Ta có biểu thức:
Kết luận chương
Chương này đã trình bày tổng quan cơ sở lý thuyết của nghiên cứu này Chương này đã bắt đầu với lý thuyết nhận dạng ảnh, bao gồm tổng quan về xử lý ảnh; Quá trình xử lý ảnh; Giới thiệu về ẩnh và biểu diễn ảnh ; Phạm vi ứng dụng của xử lý ảnh Tiếp theo, chương này đã khám phá học sâu, lĩnh vực quan trọng của trí tuệ nhân tạo, đã đưa ra những tiến bộ đáng kể trong xử lý ảnh và nhiều lĩnh vực khác Học sâu là một phần của học máy, tập trung vào việc xây dựng và huấn luyện các mạng nơ- ron để tự động học và hiểu dữ liệu từ đó đưa ra các dự đoán và quyết định Mạng nơ- ron tích chập (CNN) là một trong những kiến trúc quan trọng trong học sâu và đã làm thay đổi cách chúng ta tiếp cận và giải quyết các bài toán xử lý ảnh Cuối cùng, chương này đã tìm hiểu về cấu trúc và các lớp của mạng nơ-ron, cách huấn luyện mạng nơ-ron nhân tạo
PHƯƠNG PHÁP NHẬN DẠNG HÀNH ĐỘNG
Tổng quan về nhận dạng hành động
Hành động trong Nhận dạng hành động của con người (Human Action Recognition - HAR) bao gồm một thực thể có thể được quan sát bằng mắt người hoặc một số công nghệ cảm biến [7] Ví dụ, một hành động chẳng hạn như đi bộ yêu cầu một người trong phạm vi quan sát phải được quan sát liên tục Tùy thuộc vào các bộ phận cơ thể tham gia vào hành động, các hoạt động của con người có thể được nhóm thành bốn loại [2]:
- Cử chỉ: Nó dựa trên chuyển động của tay, mặt hoặc các bộ phận khác, trong đó không cần giao tiếp bằng lời nói
- Hành động: Nó bao gồm các chuyển động được thực hiện bởi một người như đi bộ hoặc chạy
- Tương tác: Nó liên quan đến các hành động được thực hiện bởi hai diễn viên
Nó có thể bao gồm tương tác với đối tượng hoặc tương tác với một người
- Hoạt động nhóm: Nó có thể là sự kết hợp của các cử chỉ, hành động hoặc tương tác Số lượng người biểu diễn có thể có ít nhất hai hoặc nhiều hơn với các đối tượng tương tác
HAR được coi là một lĩnh vực nghiên cứu tích cực do các ứng dụng như phân tích và truy xuất video dựa trên nội dung, giám sát trực quan, Giao diện Người-Máy tính (HCI), giáo dục, y tế, cũng như nhận dạng hoạt động bất thường, v.v Thảo luận thêm về các ứng dụng này được trình bày trong các mục sau Trong HAR, tác vụ nhận dạng hành động có thể được thể hiện bằng biểu diễn hành động và phân tích hành động Những hành động này có được bằng cách sử dụng các loại cảm biến khác nhau như RGB, phạm vi, radar hoặc cảm biến đeo được Ví dụ, tác vụ HAR thủ công, xác định hoạt động bất thường từ quá trình quay video, đòi hỏi một lượng thời gian đáng kể Những nhiệm vụ như vậy rất tốn kém và khó khăn vì hoạt động của con người là cần thiết thông qua chế độ xem nhiều camera [8] Hơn nữa, thật tẻ nhạt khi thực hiện giám sát suốt ngày đêm đối với một khu vực quan tâm và nó có thể gây ra lỗi của con người Để giải quyết những vấn đề này, có thể sử dụng mô hình hóa tự động các hành động của con người
Mô hình hóa tự động của các hành động liên quan đến quá trình ánh xạ một hành động cụ thể tới một nhãn mô tả một thể hiện của hành động đó Những hành động như vậy có thể được thực hiện bởi các tác nhân khác nhau (tức là con người) với tốc độ, điều kiện ánh sáng và quan điểm đa dạng khác nhau Mặt khác, các hệ thống HAR hoàn toàn tự động có một số thách thức như lộn xộn trong nền, tắc nghẽn, thay đổi về góc nhìn, tỷ lệ, hình thức cũng như các điều kiện bên ngoài để quay video
[9] Ví dụ, nhiệm vụ định vị người, tức là xác định vị trí và kích thước của một người, sẽ khó khăn trong điều kiện ghi động Một lượng lớn công việc nghiên cứu đã được thực hiện cho HAR Để nghiên cứu những phát triển và cập nhật gần đây, chúng tôi tiến hành khảo sát này tập trung vào HAR dựa trên video; chúng tôi cung cấp một quy trình hoàn chỉnh về biểu diễn hành động, giảm kích thước và các kỹ thuật phân tích hành động; chúng tôi cũng thảo luận về các bộ dữ liệu và các ứng dụng đáng chú ý của HAR Động lực chính của cuộc khảo sát toàn diện này là phân tích các khía cạnh khác nhau của HAR cùng với các kỹ thuật Học máy (Machine Learning - ML) và Học sâu (Deep Learning - DL), tầm quan trọng của các bộ dữ liệu và các ứng dụng tiềm năng của chúng.
Các phương pháp nhận dạng hành động
2.2.1 Nhận dạng hành động dựa trên ảnh tĩnh
Trọng tâm chính của HAR dựa trên hình ảnh tĩnh là xác định hành động của một người từ một hình ảnh duy nhất mà không xem xét thông tin thời gian để mô tả đặc điểm hành động
Một trong những khảo sát về nhận dạng hành động dựa trên hình ảnh tĩnh được trình bày trong Guo và Lai Ở đây, các phương pháp khác nhau như học máy và học sâu được thảo luận cho cấp thấp trích xuất đặc trưng và biểu diễn cấp cao cho các
26 hành động; Ngoài ra, các bộ dữ liệu khác nhau cùng với các đặc điểm của chúng cũng được trình bày Mặt khác, Vrigkas et al đã gửi một cuộc khảo sát về HAR bằng cách sử dụng biểu diễn hình ảnh tĩnh, trong đó, các kỹ thuật HAR được chia thành hai loại là nhận dạng hoạt động đơn phương thức và đa phương thức tùy thuộc vào loại phương thức được sử dụng bởi dữ liệu
2.2.2 Nhận dạng hành động dựa trên phân tích và biểu diễn hành động Đối với HAR, có thể sử dụng chiến lược từng bước liên quan đến việc biểu diễn đặc trưng bằng cách sử dụng các kỹ thuật trích xuất đặc trưng và kỹ thuật phân loại hành động Trong Poppe, HAR được thảo luận bằng cách xem xét các hành động liên quan đến chuyển động toàn thân trong khi loại trừ môi trường và tương tác với những người khác Ngoài ra, các nhiệm vụ đại diện và phân loại hành động cũng được trình bày
Trong Turaga et al., nhiệm vụ phân loại hành động được thảo luận bằng cách xem xét việc đại diện và công nhận các hành động hoặc hoạt động Các cơ chế khác nhau để tìm hiểu các hành động từ video được trình bày; nghiên cứu đã định nghĩa riêng các thuật ngữ “hành động” và “hoạt động” và trình bày tổng quan về các kỹ thuật phân loại Các tác giả cũng đã thảo luận về các phương pháp để mô hình hóa các lớp hành động nguyên tử Hơn nữa, các phương pháp để mô hình hóa các hành động với động lực học phức tạp hơn sẽ được thảo luận
Nghiên cứu về các biểu diễn thủ công và dựa trên học tập được trình bày trong Zhu et al., cũng như những tiến bộ khác nhau trong kỹ thuật biểu diễn thủ công sẽ được thảo luận Bài báo thảo luận về các tính năng khác nhau bao gồm các phương pháp tiếp cận dựa trên Khối không gian-Thời gian, các phương pháp dựa trên hình ảnh độ sâu và quỹ đạo Kiến trúc của 3D Convolution Neural Network (CNN, còn được gọi là ConvNet) cũng được trình bày trong bài báo
Trong nghiên cứu Herath et al., một cuộc khảo sát về các phương pháp nhận dạng hành động khác nhau dựa trên các kỹ thuật thủ công và học sâu đã được xem xét Trong tài liệu, các phương pháp thủ công và học sâu cùng với kiến trúc của chúng được thảo luận Sau đó, trong Aggarwal và Ryoo, các phương pháp trích xuất đặc trưng từ video đầu vào được trình bày; nhận dạng hành động của nhiều người được xem xét bằng cách sử dụng các phương pháp nhận dạng phân cấp bao gồm phương pháp thống kê (mô hình dựa trên trạng thái), cú pháp (phương pháp dựa trên ngữ pháp) và phương pháp mô tả (mô tả các hoạt động và hoạt động phụ) Mặt khác, trong Presti và La Cascia, nghiên cứu về các phương pháp tiếp cận dựa trên khung 3D được nêu bật cùng với những thách thức của chúng Các phương pháp tiền xử lý, bộ mô tả cho dữ liệu dựa trên khung, bộ dữ liệu và phương pháp xác thực với các kỹ thuật đánh giá hiệu suất cũng được thảo luận
2.2.3 Nhận dạng hành động dựa trên cảm biến
HAR dựa trên cảm biến tập trung vào dữ liệu nhận được từ gia tốc kế, con quay hồi chuyển và bluetooth Phân loại hành động có thể được coi là một vấn đề nhận dạng mẫu Phương thức của dữ liệu được đặc trưng bởi một số phương thức hoạt động hoặc sự xuất hiện khác nhau
Trong Wang et al., một cuộc khảo sát về các phương pháp nhận dạng hoạt động dựa trên cảm biến sử dụng các kỹ thuật học sâu được trình bày Các tính năng cấp cao được tự động học bằng kỹ thuật học sâu cho dữ liệu cảm biến Trong Nweke et al., thảo luận về việc hợp nhất dữ liệu từ thiết bị di động và thiết bị đeo được với nhiều bộ phân loại Các kỹ thuật học sâu cho HAR được thảo luận với các ứng dụng và các vấn đề nghiên cứu mở
Quy trình nhận dạng hành động hoàn chỉnh
HAR được sử dụng để phân tích các hoạt động từ video Khi dữ liệu video được ghi lại, dữ liệu được xử lý để đáp ứng các yêu cầu của ứng dụng cơ bản Một hệ thống chung cho HAR được thể hiện bằng đồ họa trong Hình 2.1; nó cung cấp tổng quan về các bước chung bao gồm thu thập dữ liệu, tiền xử lý, trích xuất và/hoặc mã hóa tính năng, giảm kích thước tiềm năng, tiếp theo là chuẩn bị tập dữ liệu cho đào tạo và thử nghiệm; đồng thời, các mẫu dữ liệu như vậy có thể được cung cấp cho
28 một hoặc nhiều cách tiếp cận học máy hoặc học sâu để phân loại hành động và nhãn lớp dự đoán có thể được phân tích và đánh giá cho các mẫu thử nghiệm Các kỹ thuật biểu diễn hành động và giảm kích thước rất hữu ích cho các kỹ thuật dựa trên học máy Đối với các kỹ thuật dựa trên học sâu, các bước này có thể được bỏ qua Các phương pháp hiện có được xem xét để biểu diễn hành động, giảm kích thước và phân tích hành động cho HAR được thảo luận trong các mục sau
Biểu diễn hành động cung cấp quá trình xử lý hành động của con người ở mức độ thấp Nó có thể bao gồm hai bước cụ thể là phát hiện sở thích và mô tả ranh giới sở thích Các tính năng quan trọng có thể được trích xuất và mã hóa có thể được thực hiện bằng các kỹ thuật khác nhau
Hình 2.1 Tổng quan chung về hệ thống Nhận dạng hành động con người
Khai thác và mã hóa đặc trưng:
Quy trình tổng thể của biểu diễn hành động liên quan đến việc trích xuất một tập hợp các tính năng từ các tính năng cục bộ cũng như toàn cục Mục tiêu của nhiệm vụ biểu diễn hành động là tìm các tính năng mạnh mẽ để che khuất, thay đổi nền và thay đổi điểm nhìn Tổng quan về các biểu diễn hành động dựa trên tính năng khác
Hình 2.2 Các đặc trưng khác nhau cho HAR
30 nhau được hiển thị trong Hình 2.2; thuộc tính của các tính năng này được mô tả thêm và công việc hiện tại được xem xét trong các phần sau
Các kỹ thuật dựa trên điểm quan tâm không gian-thời gian Để thể hiện một hình ảnh sử dụng các đặc trưng cục bộ, có thể sử dụng Điểm quan tâm không gian- thời gian (STIP) Tính năng STIP mã hóa hình ảnh bằng cách thêm một chiều bổ sung được gọi là thông tin tạm thời Thông tin miền tạm thời được thêm vào thông tin không gian; hình ảnh được mã hóa có thể cung cấp thông tin bổ sung về nội dung và cấu trúc trong cảnh hành động STIP có thể được chuyển đổi thành các vùng mặn bằng cách sử dụng thuật toán phân cụm Tuy nhiên, những đặc điểm này là tịnh tiến và bất biến theo tỷ lệ, chúng không phải là bất biến xoay Đối với việc ghi nhận các hành động của con người, những vị trí này được coi là những vị trí cung cấp nhiều thông tin nhất Việc mở rộng máy dò điểm nổi bật dựa trên tính năng Spatio-tem poral được đề xuất trong Oikonomopoulos et al trong đó chuỗi hình ảnh được thể hiện dưới dạng các điểm nổi bật trong không gian và thời gian Mối quan hệ giữa các tính năng khác nhau được thiết lập bằng cách tính toán khoảng cách Chamfer Biểu diễn bất biến về tỷ lệ và bản dịch của các tính năng được trích xuất được biểu diễn bằng kỹ thuật cong vênh thời gian-không gian lặp và các tính năng được chuyển đổi thành giá trị trung bình bằng không Mô hình đề xuất được đánh giá bằng cách sử dụng một chuỗi các hình ảnh thực hiện bài tập aerobic
Trong Chakraborty et al., STIP trong hình ảnh nhiều chế độ xem được phát hiện theo cách có chọn lọc bằng cách triệt tiêu xung quanh và áp đặt các ràng buộc không gian-thời gian cục bộ STIP dựa trên cường độ mạnh mẽ đối với vùng tối và vùng sáng do hiện tượng trắc quang gây nhiễu STIP màu hoạt động tốt hơn STIP dựa trên cường độ Do đó, trong Everts et al., STIP màu được đề xuất bằng cách định dạng lại trong nhiều kênh của máy dò Đối với các bộ dữ liệu như UCF sports, UCF11 và UCF50
Mặt khác, trong Zhu et al., trích xuất tính năng được thực hiện trên bản đồ độ sâu bằng cách sử dụng các tính năng STIP và Biểu đồ của Visual Word (HoVW) được tạo bằng cách sử dụng định lượng các tính năng cục bộ được trích xuất Sau đó ở Nazir et al., biểu diễn tính năng được thực hiện bằng cách kết hợp STIP và Chuyển đổi tính năng bất biến theo tỷ lệ (SIFT) và kỹ thuật dựa trên HoVW được sử dụng để biểu diễn hành động
Các phương pháp STIP không yêu cầu tiền xử lý như phân đoạn nền hoặc phát hiện con người Tuy nhiên, các tính năng này mạnh mẽ về tỷ lệ, xoay và che khuất, tuy nhiên, chúng không phải là điểm bất biến Đối với các khung hành động như đấm bốc, vỗ tay, vẫy tay và chạy bộ cho bộ dữ liệu KTH, các tính năng như vậy có thể được bản địa hóa một cách hiệu quả về cả không gian và thời gian vì mỗi video được biểu diễn bằng một tập hợp không gian và điểm quan tâm tạm thời Người ta cũng quan sát thấy rằng các tính năng STIP được điều chỉnh để phù hợp với những thay đổi về độ chiếu sáng và tỷ lệ, tuy nhiên, chúng có thể không phân biệt được giữa sự kiện và tiếng ồn trong một số tình huống
Các kỹ thuật dựa trên quỹ đạo Quỹ đạo cho các hành động được tính toán bằng cách theo dõi các khớp trong đó các điểm quan tâm dọc theo các video đầu vào bằng cách sử dụng feld fow quang học Các điểm được lấy mẫu dày đặc được theo dõi để thu được quỹ đạo bằng cách sử dụng feld fow quang học Các quỹ đạo rất hữu ích trong các tình huống trong đó thông tin dài hạn được ghi lại
Trong Wang và Schmid, các quỹ đạo dày đặc được trích xuất bằng cách theo dõi và lấy mẫu các điểm dày đặc ở nhiều tỷ lệ trong mỗi khung hình Ở đây, biểu diễn tính năng được giới thiệu bằng cách sử dụng Biểu đồ độ dốc định hướng (HOG), Biểu đồ dòng quang học (HOF) và Biểu đồ ranh giới chuyển động (HoMB) của anh ấy, lần lượt ghi lại hình dạng, diện mạo và thông tin chuyển động dọc theo quỹ đạo, tương ứng và nhiều mô tả được sử dụng cho cùng một HoMB cho kết quả được cải thiện so với SIFT và HOG do chuyển động của camera mạnh mẽ hơn; nó dựa trên dẫn xuất của fow quang học và được sử dụng để loại bỏ chuyển động của camera
Các tính năng thủ công có ít khả năng phân biệt hơn đối với HAR trong khi để trích xuất hiệu quả các tính năng, việc sử dụng các phương pháp dựa trên học sâu yêu
32 cầu một lượng lớn dữ liệu để đào tạo Do đó, trong Wang et al., lợi thế của các tính năng thủ công và dựa trên học sâu được kết hợp bằng cách sử dụng quỹ đạo được cải thiện ConvNets hai luồng còn được gọi là Bộ mô tả chuyển đổi sâu tích chập quỹ đạo (TpDD) Để xây dựng bộ mô tả hiệu quả, kiến trúc sâu học các bản đồ tính năng tích chập đa tỷ lệ Như đã giải thích trong Wang et al., đối với phần mở rộng TpDD đa tỷ lệ, luồng quang ban đầu được tính toán và theo dõi tỷ lệ đơn lẻ được thực hiện, tiếp theo là biểu diễn kim tự tháp đa tỷ lệ của khung video và cấu trúc luồng quang Để xây dựng các bản đồ tính năng tích chập có nhiều tỷ lệ, biểu diễn kim tự tháp đóng vai trò là đầu vào cho ConvNets Sau đó, để tăng cường sức mạnh của quỹ đạo dày đặc để mô tả chuyển động dài hạn, các mạng ba luồng được sử dụng trong Shi et al Ở đây, các quỹ đạo dày đặc được trích xuất từ nhiều khung hình liên tiếp, dẫn đến hình ảnh kết cấu quỹ đạo Bộ mô tả được trích xuất được gọi là Bộ mô tả quỹ đạo sâu tuần tự (sDTD) đặc trưng cho chuyển động Ba khung luồng cụ thể là không gian, thời gian và sDTD, tìm hiểu các miền không gian và thời gian với mạng CNN-Mạng thần kinh tái phát (RNN)
Các kỹ thuật dựa trên độ sâu Một hình ảnh có độ sâu được chụp bằng cách tính toán khoảng cách giữa mặt phẳng hình ảnh và đối tượng trong cảnh Ví dụ, với việc sử dụng cảm biến độ sâu chi phí thấp, Kinect, hình ảnh độ sâu 3D không thay đổi theo điều kiện ánh sáng Các ưu điểm của cảm biến dựa trên độ sâu so với máy ảnh RGB có thể được cung cấp dưới dạng ước tính tỷ lệ đã hiệu chỉnh, màu sắc và bất biến kết cấu cũng như tác vụ trừ nền đơn giản
Có thể nhận dạng một hành động bằng cách sử dụng tính năng Bản đồ chuyển động theo chiều sâu (DMM) vì tính năng này cung cấp thông tin về hình dạng và cấu trúc ở dạng 3D từ bản đồ chiều sâu Các bản đồ này được chiếu trên ba mặt phẳng trực giao là mặt trước, mặt bên và mặt trên Để xác định các vùng chuyển động, bản đồ năng lượng chuyển động được tính toán cho từng bản đồ được chiếu Đối với mỗi chế độ xem hình chiếu, DMM được hình thành bằng cách xếp chồng năng lượng chuyển động cho toàn bộ video
Trong Yang et al., bản đồ độ sâu được chiếu trên ba mặt phẳng trực giao Ở đây, để biểu diễn tính năng, HOG được xác định sau khi tính toán DMM để xây dựng các tính năng nhỏ gọn và phân biệt đối xử Trong Chen et al., các cử chỉ dựa trên DMM được sử dụng để trích xuất thông tin chuyển động và mã hóa tính năng được thực hiện bằng Mẫu nhị phân cục bộ (LBP) hoạt động tốt hơn so với trích xuất tính năng dựa trên DMM-HOG LBP nâng cao hiệu suất bằng cách áp dụng nó cho các khối chồng chéo trong DMM, giúp tăng khả năng phân biệt đối xử để nhận dạng hành động DMM được chụp trên toàn bộ chuỗi độ sâu không thể ghi lại chuyển động chi tiết, tuy nhiên, với hành động mới xảy ra cùng lúc, lịch sử chuyển động cũ có thể bị ghi đè Để tăng độ chính xác của HAR, dữ liệu được tạo đồng thời từ cảm biến độ sâu và quán tính trong Chen et al Ở đây, các tính năng hợp nhất được hình thành bằng cách kết hợp trực tiếp các tính năng từ độ sâu và cảm biến quán tính Mặt khác, trong Chen et al., một chuỗi độ sâu được chia thành các phân đoạn chồng chéo và nhiều bộ DMM được tạo Để giảm sự thay đổi trong nội bộ lớp do thay đổi tốc độ hành động, độ dài thời gian khác nhau của các phân đoạn độ sâu được xem xét Đối với phân loại hành động trong lớp, DMM không mạnh đối với các biến thể tốc độ hành động Do đó, việc cải thiện DMM được đề xuất trong Chen et al bằng cách tích lũy các vùng liên quan đến chuyển động cho ba mặt phẳng là mặt trước, mặt trên và mặt bên Sau đó, LBP dựa trên bản vá được sử dụng để mở rộng biểu diễn tính năng từ cấp độ pixel sang biểu diễn ở cấp độ kết cấu
Kết luận chương
Nhận dạng hành động là một trong những ứng dụng quan trọng của trí tuệ nhân tạo trong thế giới thực Từ việc nhận dạng hành động của con người trong video an ninh, nhận dạng biểu cảm và cử chỉ trong giao tiếp ngôn ngữ tự nhiên, cho đến ứng dụng trong công nghiệp và y tế, việc nhận dạng hành động đem lại nhiều lợi ích và ứng dụng rộng rãi
Trong chương này, đầu tiền là trình bày về tổng quan về nhận dạng hành động, bao gồm một thực thể có thể được quan sát bằng mắt người hoặc một số công nghệ
Hình 2.6 Một hệ thống HAR mô tả sự kết hợp giữa LSTM và CNN
52 cảm biến Tùy thuộc vào các bộ phận cơ thể tham gia vào hành động, các hoạt động của con người có thể được nhóm thành bốn loại: Cử chỉ, hành động, tương tác, hoạt động nhóm Tiếp theo, chương này đã khám phá các phương pháp nhận dạng hành động, bao gồm: Nhận dạng hành động dựa trên ảnh tĩnh; Nhận dạng hành động dựa trên phân tích và biểu diễn hành động; Nhận dạng hành động dựa trên cảm biến Cuối cùng, quy trình nhận dạng hành động hoàn chỉnh đã được giới thiệu Trong đó gồm các bước chính như: Biểu diễn hành động, kỹ thuật giảm kích thước, nhận dạng hành động dựa trên phân tích hành động.
KẾT QUẢ THỬ NGHIỆM TRONG BÀI TOÁN NHẬN DẠNG HÀNH ĐỘNG GIƠ TAY PHÁT BIỂU CỦA HỌC SINH
Phát biểu bài toán nhận dạng hành động giờ tay
Bài toán nhận dạng hành động giờ tay trong lớp học là một lĩnh vực quan trọng trong việc ứng dụng trí tuệ nhân tạo và công nghệ vào giáo dục Nó nhằm mục đích nhận biết và phân loại các hành động mà học sinh thực hiện bằng tay trong quá trình học tập (Hình 3.1) Bằng cách sử dụng các phương pháp và công nghệ nhận dạng hình ảnh và video, bài toán này cung cấp khả năng theo dõi và đánh giá tiến trình học tập của học sinh, từ đó tạo điều kiện tối ưu hóa quá trình giảng dạy và hỗ trợ cá nhân hóa cho học sinh
Việc nhận dạng hành động giờ tay trong lớp học mang lại nhiều lợi ích đáng kể Đầu tiên, nó giúp giáo viên và hệ thống giáo dục hiểu rõ hơn về hoạt động của học sinh trong lớp học Thông qua việc nhận dạng và phân loại các hành động giờ tay, giáo viên có thể xác định được mức độ tương tác và tham gia của học sinh trong quá trình học tập Điều này cung cấp thông tin quan trọng để đánh giá tiến trình học tập và tạo ra các phản hồi phù hợp để hỗ trợ học sinh
Thứ hai, bài toán nhận dạng hành động giờ tay trong lớp học giúp tạo ra một môi trường học tập cá nhân hóa Nhờ vào khả năng nhận dạng và phân loại các hành động, giáo viên có thể xác định được những khía cạnh mạnh mẽ và khó khăn của từng học sinh Điều này cho phép giáo viên tùy chỉnh quy trình giảng dạy và cung cấp hỗ
Hình 3.1 Tổng quan mô hình hệ thống
54 trợ cá nhân hóa cho từng học sinh, đáp ứng được nhu cầu và khả năng học tập của mỗi cá nhân
Thêm vào đó, bài toán nhận dạng hành động giờ tay cũng giúp cải thiện quá trình đánh giá trong lớp học Thay vì dựa vào việc đánh giá bằng cách hỏi và trả lời trực tiếp, giáo viên có thể sử dụng công nghệ nhận dạng hành động giờ tay để tự động đánh giá và ghi nhận tiến trình học tập của học sinh Điều này giúp tiết kiệm thời gian và công sức của giáo viên, đồng thời tạo ra một quy trình đánh giá khách quan và minh bạch hơn
Tuy nhiên, bài toán nhận dạng hành động giờ tay trong lớp học cũng đặt ra một số thách thức Một trong số đó là độ tin cậy của mô hình nhận dạng Để đảm bảo kết quả nhận dạng chính xác, cần sử dụng các mô hình và thuật toán phức tạp, đồng thời cần có dữ liệu huấn luyện đủ lớn và đa dạng Ngoài ra, bài toán này cũng phụ thuộc vào quy mô lớp học và khả năng xử lý dữ liệu trong thời gian thực
Tóm lại, bài toán nhận dạng hành động giờ tay trong lớp học mang lại nhiều lợi ích quan trọng trong việc nâng cao chất lượng giáo dục Từ việc theo dõi và đánh giá tiến trình học tập, đến tạo ra môi trường học tập cá nhân hóa và cải thiện quá trình đánh giá, bài toán này đóng vai trò quan trọng trong việc tối ưu hóa quá trình giảng dạy và hỗ trợ sự phát triển của học sinh trong lớp học hiện đại
Bảng 3.1 Thông tin chi tiết cơ sở dữ liệu thực nghiệm
Stt Mã hành động Tên hành động Training dataset
Thu thập cơ sở dữ liệu về hành động giơ tay
Cơ sở dữ liệu: Cơ sở dữ liệu này bao gồm 3.000 hình ảnh của 2 loại hành động khác nhau, là giơ tay (Asking) và ngồi nghe giảng (Looking) Trong đó, số lượng ảnh
Hình 3.2 Ảnh học sinh ngồi nghe giảng
Hình 3.3 Ảnh học sinh giơ tay
56 ở mỗi lớp đối tượng bằng nhau là 1.500 hình ảnh Cơ sở dữ liệu ảnh này được thu thập bằng cách tách các khung ảnh trong video rồi lưu lại Các video này ghi lại 2 loại hành động của học sinh ở các góc độ khác nhau Cơ sở dữ liệu này được chia làm
2 phần là tập dữ liệu huấn luyện (Training dataset) và tập dữ liệu kiểm thử (Testing dataset), với tỉ lệ tương ứng là 70% và 30% Cơ sở dữ liệu này được thu thập thủ công từ các lớp học khác nhau Thông tin chi tiết cơ sở dữ liệu được thể hiện trong Bảng 3.1 Hình 3.2 và 3.3 minh họa ảnh trong cơ sở dữ liệu
3.2.2 Ước lượng tư thế (Pose estimation)
Mô hình OpenPose [12] là một mô hình trích xuất đặc trưng và nhận dạng điểm mấu chốt trên cơ thể con người từ hình ảnh Nó được phát triển bởi Viện Công
Hình 3.4 Ảnh 17 keypoints nghệ California (CMU) và là một trong những mô hình quan trọng trong lĩnh vực nhận dạng và theo dõi cơ thể
Mục tiêu của mô hình OpenPose là phát hiện và phân loại các điểm mấu chốt (keypoint) trên cơ thể con người như các khớp cổ tay, khuỷu tay, vai, mắt, mũi, miệng và các khớp chân (Hình 3.4) Mô hình sử dụng một mạng nơ-ron tích chập để trích xuất đặc trưng từ hình ảnh và dự đoán vị trí của các điểm mấu chốt trên cơ thể
Mô hình OpenPose sử dụng một kiến trúc mạng nơ-ron sâu đa nhánh để đồng thời dự đoán vị trí của các điểm mấu chốt trên toàn bộ cơ thể Kiến trúc này bao gồm nhiều lớp tích chập, lớp gom nhóm và lớp kết nối đầy đủ Quá trình huấn luyện mô hình OpenPose thường được thực hiện trên tập dữ liệu lớn chứa các hình ảnh con người được gắn nhãn với vị trí chính xác của các điểm mấu chốt
Mô hình OpenPose đã đạt được kết quả ấn tượng trong nhiều ứng dụng thực tế, bao gồm nhận dạng hành động, theo dõi chuyển động, phân tích thể hình, nhận dạng biểu cảm và ứng dụng thể thao Nó cung cấp một cách mạnh mẽ và chính xác để phân tích cấu trúc và chuyển động của cơ thể con người từ hình ảnh và video
Tuy mô hình OpenPose mang lại nhiều lợi ích và tiềm năng trong việc nhận dạng và theo dõi cơ thể con người, nhưng cũng có nhược điểm như tốn kém về tài nguyên tính toán và có thể không hoạt động tốt trong điều kiện ánh sáng yếu hoặc góc nhìn khác nhau Tuy nhiên, với sự phát triển của công nghệ, mô hình OpenPose đang ngày càng được cải tiến và ứng dụng rộng rãi trong các lĩnh vực như công nghệ định danh, công nghệ y tế, công nghệ giải trí và nhiều lĩnh vực khác
Sau khi ước lượng tư thế, chúng ta sẽ thu được tọa độ (x,y) của các điểm điểm mấu chốt (keypoint) Dữ liệu này là đầu vào để huấn luyện mạng nơ-ron trong việc xác định tư thế của học sinh
Huấn luyện mô hình
Thiết bị phần cứng: Nghiên cứu này được triển khai trên máy tính có CPU core i5 3.10 GHz, hệ điều hành Windows 64 bit, RAM 8 GB, GPU (NVIDIA Geforce RTX 3050)
Phần mềm: Nghiên cứu này sử dụng nền tảng Anaconda 3 (Version 2022.05) để phát triển chương trình Ngôn ngữ lập trình Python được sử dụng để xây dựng chương trình
3.3.1 Mô hình mạng nơ-ron nhân tạo (ANN)
Một mô hình mạng thần kinh sâu được xây dựng để phân loại các hành vi của học sinh (Hình 3.5) Mô hình này là một mạng nhỏ và đơn giản có chứa một lớp đầu vào và bốn lớp được kết nối đầy đủ (FC) Lớp đầu vào là một vectơ chứa đặc trưng và thể hiện tư thế của con người Với 3 lớp FC kế tiếp, sau mỗi lớp FC được theo sau bởi lớp hàm kích hoạt đơn vị tuyến tính được chỉnh lưu (ReLU) và lớp chuẩn hóa hàng loạt (batch normalization) Số lượng nơ-ron ở 3 lớp FC đầu tiên lần lượt chứa
Hình 3.5 Mô hình mạng nơ-ron
128, 64 và 16 nơ-ron Lớp FC cuối cùng được theo sau bởi lớp chức năng kích hoạt softmax và lớp FC cuối cùng chứa 2 nơ-ron
3.3.2 Kết quả huấn luyện mô hình
Sau khi một tập dữ liệu lớn được thu thập, các tính năng được trích xuất, mô hình mạng lưới thần kinh sâu đã được đào tạo Nhiệm vụ này rất cần thiết và ảnh hưởng trực tiếp đến chất lượng của hệ thống đề xuất Phần này trình bày kết quả huấn luyện mô hình
Hình 3.6 minh họa mức độ chính xác đào tạo và xác thực đạt được cho tập dữ liệu đào tạo Mức độ chính xác của đào tạo và xác nhận được cải thiện theo từng epoch Sau 12 epoch, các mức độ chính xác này vẫn ở mức cao nhất quán và đạt đến mức bão hòa Vào cuối 20 epoch, mức độ chính xác đào tạo và xác nhận lần lượt là 0,9994 và 0,9991 Các mức độ chính xác này rất nổi bật và giúp hệ thống được đề xuất đạt được hiệu suất tuyệt vời Mô hình được đào tạo đã được sử dụng để đánh giá và thực hiện hệ thống được đề xuất
Hình 3.6 Độ chính xác của mô hình trong quá trình huấn luyện
Phân tích và đánh giá kết quả thu được
3.2.1 Thực hiện với kịch bản đơn giản
Trong trường hợp, các videos chỉ có 1 người trên 1 khung hình như các videos 1-5 trong Hình 3.2 và 3.3 Do đó, việc nhận dạng hành động giơ tay trên các videos này được thực hiện dễ dàng
Hình 3.7-3.8 là hình ảnh minh họa kết quả nhận dạng hành động học sinh ngồi nghe giảng và giơ tay Kết quả nhận dạng hành động thu được trong trường hợp này rất chính xác và hiệu quả
Hình 3.7 Kết quả nhận dạng hành động học sinh ngồi nghe giảng
3.2.2 Thực hiện với kịch bản phức tạp
Trong trường hợp, các videos có nhiều người trên 1 khung hình và có các hành động khác nhau Do đó, việc nhận dạng hành động trong các videos này khó khăn hơn
Hình 3.8 Kết quả nhận dạng hành động học sinh giơ tay
Hình 3.9 Kết quả nhận dạng hành động nhóm học sinh
Hình 3.9 thể hiện kết quả nhận dạng hành động trong 1 nhóm học sinh Kết quả thu được vẫn rất tốt Tuy nhiên, với lớp đông học sinh (Hình 3.10) thì kết quả nhận dạng đang giảm đi đáng kể Do, lớp đông học sinh và các học sinh ngồi gần nhau nên có các em phía trước sẽ che lấp một phần các em phía sau, các học sinh ngồi cuối lớp thì khoảng cách xa và kích thước ảnh sẽ nhỏ nên khó nhận dạng được,
Sau khi tiến hành kiểm thử hệ thống với 2 kịch bản: kịch bản đơn giản và kịch bản phức tạp, kết quả thu được là rất tốt Với kịch bản đơn giản, hệ thống nhận dạng hành động là cực kỳ chính xác Còn với kịch bản phức tạp, độ chính xác kết quả nhận dạng hành có giảm đi, tuy nhiên vẫn rất tốt Điều này do một số yếu tố như sự che lấp, hay các em ngồi ở các vị trí xa.
Kết luận chương
Chương này đã trình bày chi tiết về kết quả thử nghiệm trong bài toán nhận dạng hành động giơ tay phát biểu của học sinh Đầu tiên là phát biểu bài toán nhận dạng hành động giờ tay Sau đó, chương này mô tả cách thu thập cơ sở dữ liệu và ước lượng tư thế người (Pose estimation) Tiếp theo, huấn luyện mô hình đã được thực
Hình 3.10 Kết quả nhận dạng hành động trong lớp đông học sinh hiện và độ chính xác thu được rất nổi bật, do đó hệ thống được đề xuất đạt được hiệu suất tuyệt vời Cuối cùng, mô hình được đào tạo đã được sử dụng để đánh giá và thực hiện hệ thống được đề xuất, với các kịch bản khác nhau: Kịch bản đơn giản và kịch bản phức tạp Kết quả nhận dạng hành động thu được trong các trường hợp này rất chính xác và hiệu quả