1. Trang chủ
  2. » Giáo Dục - Đào Tạo

NGHIÊN CỨU VÀ ÁP DỤNG PHƯƠNG PHÁP POSECONV3D TRONG BÀI TOÁN PHÁT HIỆN HÀNH VI GIAN LẬN TRONG PHÒNG THI THÔNG QUA CAMERA

65 2 0

Đ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

Thông tin cơ bản

Tiêu đề Nghiên Cứu Và Áp Dụng Phương Pháp Poseconv3D Trong Bài Toán Phát Hiện Hành Vi Gian Lận Trong Phòng Thi Thông Qua Camera
Tác giả Nguyễn Thành Nhân
Người hướng dẫn Th.S Trần Thị Dung
Trường học Đại học Giao thông Vận tải
Chuyên ngành Công nghệ thông tin
Thể loại báo cáo đồ án tốt nghiệp
Năm xuất bản 2023
Thành phố Thành phố Hồ Chí Minh
Định dạng
Số trang 65
Dung lượng 10,65 MB

Nội dung

Nghiên cứu sẽ tập trung vào phát triển một mô hình sâu về học máy, có khả năng nhận diện các biểu hiện của hành vi gian lận trong video thu được từ camera quan sát.. Mục tiêu nghiên cứu

Trang 1

TRƯỜNG ĐẠI HỌC GIAO THÔNG VẬN TẢI PHÂN HIỆU TẠI THÀNH PHỐ HỒ CHÍ MINH

BỘ MÔN CÔNG NGHỆ THÔNG TIN

BÁO CÁO ĐỒ ÁN TỐT NGHIỆP

ĐỀ TÀI: NGHIÊN CỨU VÀ ÁP DỤNG PHƯƠNG PHÁP

POSECONV3D TRONG BÀI TOÁN PHÁT HIỆN HÀNH VI GIAN

LẬN TRONG PHÒNG THI THÔNG QUA CAMERA

Giảng Viên Hướng Dẫn: Th.S TRẦN THỊ DUNG

Sinh viên thực hiện: NGUYỄN THÀNH NHÂN

Lớp: CÔNG NGHỆ THÔNG TIN

TPHCM, ngày 01 tháng 12 năm 2023

Trang 2

TRƯỜNG ĐẠI HỌC GIAO THÔNG VẬN TẢI PHÂN HIỆU TẠI THÀNH PHỐ HỒ CHÍ MINH

BỘ MÔN CÔNG NGHỆ THÔNG TIN

BÁO CÁO ĐỒ ÁN TỐT NGHIỆP

ĐỀ TÀI: NGHIÊN CỨU VÀ ÁP DỤNG PHƯƠNG PHÁP

POSECONV3D TRONG BÀI TOÁN PHÁT HIỆN HÀNH VI GIAN

LẬN TRONG PHÒNG THI THÔNG QUA CAMERA

Giảng Viên Hướng Dẫn: Th.S TRẦN THỊ DUNG

Sinh viên thực hiện: NGUYỄN THÀNH NHÂN

Lớp: CÔNG NGHỆ THÔNG TIN

TPHCM, ngày 01 tháng 12 năm 2023

Trang 3

TRƯỜNG ĐẠI HỌC GIAO THÔNG VẬN TẢI CỘNG HÒA XÃ HỘI CHỦ NGHĨA VIỆT NAM PHÂN HIỆU TẠI THÀNH PHỐ HỒ CHÍ MINH Độc lập - Tự do - Hạnh phúc

-

-MÔ TẢ TỔNG QUAN VỀ QUÁ TRÌNH NGHIÊN CỨU

-*** -Mã sinh viên: 6051071079 Họ và Tên: Nguyễn Thành Nhân

Khóa: 60 Lớp: Công Nghệ Thông Tin

1 Tên đề tài: NGHIÊN CỨU VÀ ÁP DỤNG PHƯƠNG PHÁP POSECONV3D TRONG BÀI

TOÁN PHÁT HIỆN HÀNH VI GIAN LẬN THÔNG QUA CAMERA

2 Mục đích, yêu cầu:

A) Mục đích:

Nghiên cứu, tìm hiểu, tìm ra được đâu là phương pháp phù hợp nhất đối với bài toán Nhận diện hành vi trong thời gian hiện tại Đồng thời nêu ra điểm tương đồng giữa hai bài toán Phát hiện hành vi Gian lận trong thi cử và bài toán Nhận diện hành động Tìm hiểu đâu là những lớp hành vi được cho là gian lận Tiến hành thu thập dữ liệu theo những phân tích đánh giá trên Nghiên cứu áp dụng vào việc xây dựng một luồng hoàn chỉnh sử dụng những kiến trúc học máy đã có trước đó để xây dựng một ứng dụng Phát hiện hành vi gian lận trong phòng thi

B) Yêu cầu:

- Yêu cầu công nghệ: Sử dụng ngôn ngữ lập trình Python cho việc viết mã đồng thời sử

dụng một số thư viện C++ trong việc tăng tốc và biểu diễn các Curve Learning

- Sử dụng thư viện Pytorch để xây dựng, phát triển cũng như nghiên cứu các kiến trúc mô hình Deep Learning

- Sử dụng Tensorboard như một trong những công cụ để đo đạc hiệu quả của mô hình Đồngthời phát hiện các vấn đề trong lúc train thông các Learning Curve

- Yêu cầu phần cứng: Yêu cầu về mặt phần cứng được mô tả như sau Phần cứng tối thiểu được mô tả gồm 16GB Ram, 1 GPU Tesla T4 và 8 CPU còn phần cứng tối đa gồm 4 GPU

Trang 4

- Yêu cầu kết quả nghiệm thu: Nghiên cứu triển khai được Mô hình Action Recognition từ phương pháp đã đặt ra.

3 Công nghệ sử dụng và cấu hình:

Về thư viện: Sử dụng nhiều thư viện phổ biến của Python ở thời điểm hiện tại có thể xem tổng quan tại file requirements.txt trong source code chính

- Về Framework: sử dụng 2 frame work phát triển AI phổ biến ở hiện tại là Tensorflow và Pytorch Cả 2 Framework được sử dụng xen kẽ nhau để tối ưu hóa hiệu xuất, giảm thời gian thực thi đồng thời giảm sự tiêu hao phần cứng

- Về cấu hình phần cứng: vì mục tiêu của đồ án là nghiên cứu hiệu năng, tăng cường hiệu suất đồng thời giảm tối thiểu thời gian nên việc đẩy mạnh phần cứng trong việctriển khai là 1 việc rất cần thiết

- Đơn vị công tác: Bộ Môn CNTT

- Số điện Thoại: Emails:

Trang 5

Được sự phân công của quý thầy cô Bộ môn Công Nghệ Thông Tin, Đại Học Giao Thông Vận Tải Phân Hiệu Thành Phố Hồ Chí Minh, sau gần ba tháng thực hiện, em đã có thể hoàn thành Khóa luận tốt nghiệp cuối khóa.

Để hoàn thành nhiệm vụ được giao, ngoài sự nỗ lực học hỏi của bản thân còn có sự hướng dẫn tận tình của thầy cô, các anh chị, và sự hỗ trợ của các bạn trong trường

Em chân thành cảm ơn Cô - Th.S Trần Thị Dung, người đã hướng dẫn cho em trong suốt thời gian thực hiện Khóa luận Cô đã có những chỉ dẫn, góp ý để em có thể hoàn thành tốt nhiệm vụcủa mình Một lần nữa, em chân thành cảm ơn cô và chúc cô ngày càng thành công trên sự nghiệp của mình

Xin cảm ơn những anh, chị, em, đồng nghiệp cũng như các bạn cùng khóa và khác khóa đã

hỗ trợ em khi em gặp những khó khăn, những lần bí ý tưởng

Tuy nhiên vì kiến thức chuyên môn còn hạn chế và bản thân còn thiếu nhiều kinh nghiệm thực tiễn nên nội dung của báo cáo không tránh khỏi những thiếu xót, em rất mong nhận sự góp ý, chỉ bảo thêm của quý thầy cô cùng toàn thể anh, chị, em đồng nghiệp để báo cáo này được hoàn thiện hơn

Cuối cùng em xin gửi đến quý thầy, cô, quý anh, chị, em đồng nghiệp, bạn bè lời cảm ơn chân thành nhất

Trang 6

NHẬN XÉT CỦA GIẢNG VIÊN HƯỚNG DẪN

………

………

………

………

………

………

………

………

………

………

………

………

………

………

………

TP Hồ Chí Minh, Ngày ….… Tháng 01 Năm 2024

Giáo viên hướng dẫn

Trần Thị Dung

Trang 7

MỤC LỤC

MỞ ĐẦU 11

A Tổng quan đề tài 11

B Mục tiêu nghiên cứu 11

C Đối tượng nghiên cứu 12

D Phạm vi nghiên cứu 12

CHƯƠNG I CƠ SỞ LÝ THUYẾT 13

1 Giới thiệu chung về bài toán Nhận diện hành vi con người 13

2 Trích xuất tư thế (Pose Extraction) 18

2.1 Phát hiện con người (Human Detection) 20

2.2 Ước tính tư thế (Pose Estimation) 22

2.2.1 High-Resolution Network 22

3 Từ tư thế 2D chuyển thành khối biểu đồ nhiệt 3D 25

4 Những kiến trúc 3D-CNN phù hợp để áp dụng cho bài toán Skeleton-based Action Recognition 27

CHƯƠNG II ỨNG DỤNG PHƯƠNG PHÁP POSECONV3D VÀO BÀI TOÁN PHÁT HIỆN HÀNH VI GIAN LẬN TRONG PHÒNG THI 30

A Dữ liệu, cấu hình tối thiểu, thông số đánh giá 30

1 Giới thiệu bộ dữ liệu 30

2 Cấu hình phần cứng tối thiểu 33

3 Thông số metrics được dùng cho kiến trúc 34

B Mô hình cơ sở và phát triển mô hình 36

1 Mô hình cơ sở 36

1.1 ResNet50 [34] 36

1.2 Faster R-CNN 39

1.2.2 Triển khai xây dựng Faster R-CNN bài toán Human Detection 43

1.3 HRNet 44

2 Những kiến trúc 3D-CNN cho PoseConv3D 47

2.1 C3D 48

2.2 X3D 50

2.3 SlowOnly 52

3 Kết hợp các kiến trúc 53

C Áp dụng trên bài toán phát hiện hành vi gian lận trong phòng thi 55

1 Chuẩn bị dữ liệu 56

2 Tiến hành đào tạo mô hình 59

3 Kết quả và đánh giá mô hình 59

D Xây dựng ứng dụng 60

CHƯƠNG III KẾT LUẬN 62

A Ưu điểm của việc áp dụng PoseConv3D 62

B Hạn chế của PoseConv3D 62

C Hướng mở rộng 62

TÀI LIỆU THAM KHẢO 63

Trang 8

Mục lục hình ảnh

Hình 1: Kiến trúc GCN 15

Hình 2: Kiến trúc 3D-CNN cơ bản 15

Hình 3: Luồng xử lý của Alpha-Pose - Mô hình sử dụng phương pháp Top-down Pose Estimation 19 Hình 4: Luồng hoạt động của Open-Pose - một mô hình Bottom-up Pose Estimation 19

Hình 5: Kiến trúc Faster R-CNN 20

Hình 6: Region proposal network (RPN) 21

Hình 7: Kiến trúc Fast R-CNN 22

Hình 8: Kiến trúc HRNet 23

Hình 9: Minh họa cách kết hợp thông tin ngữ nghĩa giữa các đặc trưng độ phân giải cao, trung bình và thấp 24

Hình 10: Ví dụ cho 3D joint heatmap volume và 3D limb heatmap volume 26

Hình 11: Mô tả kĩ thuật Subject-Centered Cropping 26

Hình 12: So sánh hiệu suất của Fix-Stride Sampling và Uniform Sampling 27

Hình 13: Mô tả kỹ thuật Uniform Sampling 27

Hình 14: Kiến trúc mạng C3D 28

Hình 15: Kiến trúc mạng SlowOnly 29

Hình 16: Kiến trúc mạng X3D 29

Hình 17: Bộ dữ liệu FineGYM 30

Hình 18: Bộ dữ liệu NTURGB+D 31

Hình 19: Bộ dữ liệu Kinetics400 31

Hình 20: Bộ dữ liệu Volleyball 32

Hình 21: Cấu hình GPU tối thiểu 34

Hình 22: Hàm Cross-Entropy 35

Hình 23: Công thức tính Accuracy 35

Hình 24: Công thức tính FLOPs 36

Hình 25: Kiến trúc ResNet50 38

Hình 26: Kiến trúc Faster R-CNN 39

Hình 27: Những Anchor có kích thước khác nhau 40

Hình 28: Kiến trúc cơ bản của Fast R-CNN 41

Hình 29: Region Proposal Network trong bài toán Object Detection 42

Hình 30: Hàm Loss Smooth-L1 42

Hình 31: Kiến trúc Faster R-CNN cho module Human Detection 43

Hình 32: Bộ dữ liệu COCO 43

Hình 33: Loss function trên tập train và val 44

Hình 34: Kiến trúc HRNet-w32 được sử dụng 46

Hình 35: Khác nhau giữa tích chập 3D và 2D 48

Hình 36: C3D 49

Hình 37: Hiệu suất của C3D trên bộ UCF101 50

Hình 38: Kiến trúc mạng X3D 51

Hình 39: So sánh X3D với SOTA trên bộ Kinetics400-val và test 51

Hình 40: So sánh biến thể của X3D với SOTA của bộ Kinetics-600 52

Hình 41: So sánh các biến thể của X3D và SOTA của bộ AVA 52

Hình 42: Kiến trúc mạng SlowOnly 52

Hình 43: So sánh hiệu suất của SlowOnly, FastOnly và kết hợp hai phương thức 53

Hình 44: Kiến trúc tổng hợp cơ bản của PoseConv3D 53

Hình 45: Visualization của những heatmap 54

Figure 46: Ví dụ về c7sav-heatmap 54

Hình 47: Luồng của dữ liệu khi đi qua Faster R-CNN 56

Trang 9

Hình 48: Một ví dụ về Pose Estimation 57

Hình 49: Kết quả Pose Estimation của HRNet 57

Hình 50: 3D Heatmap Volumes 58

Hình 51: Hiệu suất phần cứng trong quá trình training 58

Hình 52: Các thông số trong quá trình training 59

Hình 53: Đường cong accuracy của PoseConv3D được train trên tập NTU-120 59

Hình 54: Một kết quả dự đoán trong một video mẫu 60

Hình 55: Một kết quả khác khi đối tượng thay đổi hành động 61

Hình 56: Kết quả của mô hình PoseConv3D nguyên bản 61

Trang 10

3 Faster R-CNN Faster Region-based

Convolutional NeuralNetworks

Mạng tích chập dựatrên vùng

Networks

Mạng tích chập đồ thị

Estimation Nhận diện tư thế mộtngười

operations

Giá trị thường được sửdụng để thể hiện độphức tạp của thuật toán

Trang 11

MỞ ĐẦU

A Tổng quan đề tài

Bài luận văn này tập trung vào nghiên cứu và triển khai một mô hình nhận diện hành vi con người để phát hiện gian lận trong môi trường thi cụ thể bằng camera Đây là một lĩnh vực nghiên cứu quan trọng, đặc biệt là trong bối cảnh ngày càng tinh vi và phức tạp của các hình thức gian lận trong kỳ thi

Hành vi con người có thể cung cấp thông tin quan trọng về sự chân thật và trung thực của thísinh trong quá trình thi Đối mặt với sự đa dạng của các hình thức gian lận, từ việc ghi chép đến sử dụng thiết bị hỗ trợ thông minh, việc xây dựng một hệ thống nhận diện hiệu quả trở nên ngày càng quan trọng để bảo vệ tính công bằng và chất lượng của quá trình thi

Nghiên cứu sẽ tập trung vào phát triển một mô hình sâu về học máy, có khả năng nhận diện các biểu hiện của hành vi gian lận trong video thu được từ camera quan sát Sự kết hợp giữa các phương pháp học sâu và kỹ thuật nhận diện hình ảnh sẽ tạo ra một hệ thống mạnh mẽ có thể phân loại và cảnh báo về các hành vi đáng ngờ

Mục tiêu cuối cùng của đề tài là triển khai mô hình vào thực tế, tích hợp nó vào hạ tầng của phòng thi để tăng cường khả năng giám sát và phát hiện gian lận Điều này có thể mang lại lợi ích lớn cho các tổ chức tổ chức kỳ thi, giúp đảm bảo tính minh bạch và công bằng, đồng thời ngăn chặnhiệu quả hành vi gian lận trong quá trình thi cử

B Mục tiêu nghiên cứu

Để thực hiện được đề tài này, chúng ta cần phải:

 Phân tích hành vi gian lận: Tìm hiểu, nghiên cứu về các hình thức gian lận thường gặp trong môi trường phòng thi tại các trường đại học, bao gồm những cử chỉ hành động của thí sinh trong lúc tham gia làm bài thi có thể được ghi lại thông qua camera

 Xây dựng bộ dữ liệu đào tạo: Tiến hành thu thập và xử lý dữ liệu từ các buổi thi mô phỏng để tạo ra một bộ dữ liệu đa dạng và đủ lớn để đào tạo một mô hình học sâu

 Phát triển mô hình nhận diện hành vi: Xây dựng một mô hình học máy sử dụng kỹ thuật học sâu, có khả năng nhận diện các biểu hiện của hành vi gian lận từ dữ liệu video thu được từ camera quan sát

 Tối ưu hóa và đánh giá hiệu suất: Tối ưu hóa mô hình để đảm bảo hiệu suất cao và khả năng chính xác trong việc phát hiện các hành vị gian lận Sử dụng các phương pháp đánh giá chất lượng mô hình để đảm bảo tính ổn định và đáng tin cậy

Trang 12

 Triển khai và tích hợp hệ thống: Triển khai mô hình nhận diện hành vi vào môi trường thực tế trong phòng thi, tích hợp vào hạ tầng hệ thống có khả năng giám sát một cách tự động.

 Đề xuất hướng cải tiến: Dựa trên kết quả đánh giá, đề xuất hướng cải tiến cho mô hình và hệ thống nhận diện hành vi

Mục tiêu của nghiên cứu này là phát triển một hệ thống nhận diện hành vi gian lận thông qua camera có khả năng hiệu quả và áp dụng trong thực tế để cải thiện quá trình quản lý và giám sáttrong lĩnh vực thi cử

C Đối tượng nghiên cứu

Đối tượng nghiên cứu của đề tài này bao gồm các thành phần chính liên quan đến mục tiêu nhận diện hành vi gian lận trong phòng thi thông qua camera Dưới đây là các đối tượng cụ thể:

 Thí sinh trong phòng thi: Phân tích và theo dõi hành vi của thí sinh trong quá trình thi cử thông qua camera quan sát

 Dữ liệu từ camera: Thu thập dữ liệu video từ camera quan sát trong các buổi thi mô phỏng

để sử dụng cho việc đào tạo và kiểm thử mô hình

 Các mô hình học máy, học sâu: Phát triển và tối ưu hóa mô hình học máy để nhận diện hành

vi gian lận từ dữ liệu video thu được từ camera

 Các giám thị coi thi: Có thể sử dụng thông tin từ hệ thống nhận diện để hỗ trợ và quản lý anninh thi cử

Các đối tượng này đóng vai trò quan trọng trong việc nghiên cứu, phát triển và triển khai hệ thống nhận diện hành vi gian lận trong môi trường thi cử

Trang 13

CHƯƠNG I CƠ SỞ LÝ THUYẾT

1 Giới thiệu chung về bài toán Nhận diện hành vi con người

Video Understanding là thuật ngữ chỉ chung cho những bài toán liên quan đến việc xử lý đầuvào là những video Thông thường, bài toán phổ biến nhất và có thể được coi là đại diện cho Video

Understading là Nhận diện hành động qua video (Video Action Recognition)[1] Ngoài ra còn có thể kể đến như Video Action Detection[2], Video Action Localization[3], cũng đều là những

bài toán thú vị đang dần nhận được nhiều sự quan tâm hơn trong thời gian gần đây

Nhìn chung, chúng ta đều đã quen với các bài toán xử lý ảnh thông thường như: Phân loại ảnh (Image Classification)[4], Phát hiện đối tượng (Object Detection)[5], Phân loại bộ phận cho đối tượng (Object Segmentation)[6], Đây là những tác vụ chỉ tập trung và một hình ảnh,

hay trong một video thì chỉ tập trung và một khung ảnh (frame) riêng lẻ Khi nâng độ phức tạp từ ảnh lên video, nó sẽ là bài toán ở cấp độ khó hơn (không chỉ là mức tuyến tính) Đương nhiên, nhiều bài toán xử lí video thực tế cũng chỉ cần ở mức frame là đủ, ví dụ, tracking - tận dụng hiệu quả của object detection và chỉ quan tâm đến việc liên kết các object này xuyên suốt video Nhưng hầu hết các bài toán video understanding khác thì không chỉ cần có thế, và thứ làm nên sự khác biệt

giữa một bài toán xử lí video và một bài toán xử lí ảnh là ở một từ khóa: Thông tin thời gian (Temporal Information) Khi mà các bài toán xử lý ảnh cần quan tâm nhiều đến Thông tin không gian (Spatial Information) thì video understanding cần tận dụng cả về thông tin không gian lẫn thời gian gọi là Thông tin không thời gian (Spatial-temporal Information), thứ tạo nên những

thách thức chính cho bài toán này

Nhận diện hành động có thể được coi là nhiệm vụ trong tâm trong mảng Video

Understading Các nghiên cứu hiện tại đã khám phá ra những phương pháp khác nhau cho việc biểu

diễn các tính năng (feature) như sử dụng RGB frames, luồng quang học, sử dụng sóng âm thanh

và sử dụng khung xương Trong số những phương pháp trên, Nhận diện hành vi dựa trên khung xương (Skeleton-based Action Recognition)[1] đang nhận được sự chú ý trong thời gian gần đây

do tính chất có thể tập trung vào phân biệt hành động mà ít bị tác động bởi các yếu tố bên ngoài và

sự nhỏ gọn của nó Trong lúc thực hiện, khung xương người được biểu diễn dưới dạng danh sách

tọa độ các khớp, các khớp ấy sẽ được trích xuất từ một bộ Ước tính dáng người (Pose Estimator) [7] Vì chỉ bao gồm những thông tin về dáng, tư thế nên các danh sách khung xương trên không bị

ảnh hưởng bởi những thay đổi ngữ cảnh chẳng hạn như background, thời tiết, ánh sáng,

Trong số tất cả các phương pháp Skeleton-based Action Recognition, Mạng tích chập đồ thị (Graph Convolutional Networks) (GCN)[8] được coi là phổ biến nhất Đặc biệt, GCN coi mỗi

khớp xương ở những mốc thời gian khác nhau đều là một nút Các nút lân cận trong không gian và thời gian được kết nối với nhau bằng các cạnh Các lớp tích chập đồ thị (Graph Conv Layer) được

áp dụng vào đồ thị đã được xây dựng để khám phá ra những mẫu hành động theo không thời gian

Do có hiệu suất tốt trên những bộ dữ liệu chuẩn dành cho bài toán Skeleton-based Action

Recognition nên GCN trở thành một phương pháp chuẩn khi xử lý chuỗi khung xương

Trang 14

Mặc dù đã đạt được những kết quả khá tốt, tuy nhiên GCN vẫn gặp phải giới hạn ở một số khía cạnh:

 Sức mạnh: Vì GCN xử lý trực tiếp tọa độ các khớp, nên những thay đổi nhỏ của những tọa độ có thể ảnh hưởng đáng kể đến khả năng nhận diện những hành động của phương pháp này Điều này thường xảy ra khi ta đột ngột thay đổi một bộ pose estimator khác trong lúc triển khai Một sự nhiễu loạn nhỏ trong những tọa độ thường dẫn đến những dự đoán hoàn toàn khác biệt so với khi chúng ta đào tạo mô hình

 Khả năng tương tác: Những nghiên cứu trước đây trình bày cho chúng ta thấy những phương pháp nhận diện hành động khác nhau như dựa trên RGB, dựa trên dòng quang học, dựa trên khung xương được bổ sung cho nhau Do đó, sự kết hợp hiệu quả của các phương thức như vậy thường tăng hiệu suất trong bài toán nhận diện hành động Tuy nhiên, GCN vận hành trên đường đi của những đồ thị không theo bất

kì một qui tắc nào, điều này rất khó để kết hợp với những phương pháp khác thường được thể hiện trên các dữ liệu dạng bảng thông thường

 Khả năng mở rộng: Ngoài ra, do GCN coi mỗi khớp là một nút, nên độ phức tạp của GCN tỉ lệ tuyến tính với số lượng người, nên phương pháp này gặp nhiều hạn chế trong những trường hợp nhận diện nhiều người chẳng hạn như nhận diện hành động cho một nhóm người

Trong bài luận văn này, em có nghiên cứu và áp dụng phương pháp PoseConv3D cho bài toán nhận diện hành vi con người dựa trên khung xương Phương pháp này được Haodong Duan, Yue Zhao, Kai Chen, Dahua Lin, Bo Dai đến từ Đại học Trung Quốc Hong Kong, Đại học Texas ở Austin, Phòng thí nghiệm AI Thượng Hải, S-Lab Đại học Công nghệ Nanyang, Nghiên cứu

SenseTime, kết hợp nghiên cứu và đã đề xuất giải pháp và được đăng trên CVPR, arXiv vào tháng 4năm 2022

PoseConv3D là một phương pháp cạnh tranh và có khả năng thay thế cho phương pháp GCN trước đó Cụ thể là PoseConv3D lấy tư thế đầu vào 2D thu được từ các công cụ Pose

Estimator hiện đại như HRNet, Kinect, ViBE Từ tư thế 2D được biểu diễn bằng cách chồng các biểu đồ nhiệt của các khớp xương thay vì tọa độ được vận hành theo đồ thị Các biểu đồ nhiệt theo

tuần tự thời gian được xếp chồng lên nhau gọi là Khối biểu đồ nhiệt 3D (3D heatmap volume)

Sau đó PoseConv3D sử dụng 3D-CNN lên 3D heatmap volume đó để nhận diện các đặc trưng của hành động

Bảng 1: Sự khác nhau giữa hai hướng tiếp cận GCN và PoseConv3D

Hướng tiếp cận dựa trên GCN Hướng tiếp cận PoseConv3DĐầu vào Khung xương 2D/ 3D Khung xương 2D

Định dạng Tọa độ Khối biểu đồ nhiệt 3D

Trang 15

Thay vì biểu diễn khung xương dưới biểu đồ và các nút (khớp) và các cạnh (xương),

PoseConv3D mã hóa chúng dưới dạng khối biểu đồ nhiệt 3D Mỗi kênh biểu đồ nhiệt tương ứng với mỗi khớp và cường độ của mỗi điểm ảnh ba chiều trong khối biểu thị xác suất khớp đó nằm ở vịtrí đó Cách tiếp cận này tận dụng điểm mạnh của CNN trong việc nắm bắt các điểm mạch lạc về mặt không gian, cho phép chúng xử lý trực tiếp các mối quan hệ không gian giữa các khớp mà không cần dựa vào các qui tắc truyền và xây dựng đồ thị

Lợi ích của việc biểu diễn khung xương người dưới dạng biểu đồ nhiệt 3D:

CNN vượt trội trong việc trích xuất các tính năng không gian từ các khối Với biểu đồ nhiệt 3D, ta có thể trực tiếp tìm hiểu mối quan hệ giữa các khớp mà không cần dựa vào các kết nối biểu

đồ rõ ràng Điều này giúp loại bỏ những thành kiến hoặc hạn chế tiềm ẩn do các quy tắc xây dựng biểu đồ áp đặt

Sự phân bố cường độ trong biểu đồ nhiệt chứa thông tin phong phú về vị trí các khớp và sự biến đổi của chúng theo thời gian Bối cảnh này rất quan trọng để hiểu động cơ của hành động

Thuật toán ước tính tư thế có thể gây ra lỗi ở các vị trí khớp Biểu đồ nhiệt 3D giúp giảm thiểu điều này bằng cách tổng hợp thông tin trên các voxel lân cận Điều này làm giảm tác động củacác lỗi riêng lẻ và dẫn đến hiệu suất mô hình ổn định hơn

Không giống như GCN hoạt động trên đồ thị, 3D-CNN cung cấp các hoạt động tích chập hiệu quả có thể song song hóa hiệu quả Điều này làm cho PoseConv3D có khả năng mở rộng tốt hơn đối với các tập dữ liệu lớn với nhiều khung

Bảng 2: So sánh PoseConv3D với MS-G3D (GCN SOTA) về mặt hiệu suất trên những bộ dữ liệu

NTU-120 84.8 2.8M 16.7G 85.1 86.0

Kinetics400 44.9 2.8M 17.5G 44.8 46.0

Trang 16

Để đảm bảo so sánh công bằng giữa các khớp khác nhau và giữa các khung, các kỹ thuật chuẩn hóa thích hợp có thể được áp dụng cho biểu đồ nhiệt Số lượng biểu đồ nhiệt xếp chồng lên nhau dọc theo chiều thời gian ảnh hưởng đến mức độ chi tiết của mô hình có thể nắm bắt được độnglực của thời gian Việc chọn độ phân giải phù hợp liên quan đến việc cân bằng độ chính xác và chi phí tính toán Một số biến thể PoseConv3D kết hợp điểm tin cậy cùng với bản đồ nhiệt để giải thíchthêm cho những điểm không chắc chắn trong ước tính tư thế tiềm ẩn Một số điểm mạnh của

PoseConv3D:

I Học những đặc trưng không thời gian:

PoseConv3D sử dụng 3D-CNN với các kênh tích chập thời gian dể trích xuất đặt điểm không thời gian trực tiếp từ các biểu đồ nhiệt Điều này cho phép mô hình tìm hiểu một cách hiệu quả cách các vị trí và chuyển động của khớp thay đổi theo thời gian như thế nào, và từ đó nắm bắt được động lực của hành động

So với các GCN hoạt động dựa trên các cấu trúc đồ thị có thể không nắm bắt được đầy

đủ bối cảnh không gian, PoseConv3D có thể tìm hiểu các tính năng không thời gian có nhiều sắc thái hơn, dẫn đến độ chính xác được cải thiện

Sức mạnh của các kiến trúc 3D:

◦ Nắm bắt được các mối quan hệ không gian: Không giống như các GCN dựa trên các kết nối biểu đồ được xác định trước, các kết cấu 3D trong PoseConv3D trực tiếp tìm hiểu các mối quan hệ không gian giữa các khớp trong khối biểu đồ nhiệt Điều này cho phép

mô hình khám phá các mẫu và tương tác phức tạp mà GCN có thể bỏ lỡ

◦ Nhận thức về thời gian: Để kết hợp chiều hướng quan trọng của thời gian, PoseConv3D

sử dụng các kênh tích chập thời gian Những kênh tích chập này hoạt động trên các biểu

đồ nhiệt liên tiếp, ghi lại các khớp thay đổi và chuyển động theo thời gian

◦ Trích xuất tính đa năng tỉ lệ: Tích chập 3D có thể áp ụng với các kích thước kênh tích chập khác nhau, cho phép mô hình trích xuất các tính năng ở nhiều qui mô không gian khác nhau Cách tiếp cận đa qui mô này giúp nắm bắt cả thông tin chi tiết và thông tin chi tiết về sự chuyển động, dẫn đến sự hiểu biết hơn về hành động

Những phần chính trong việc học tập các đặc tính không thời gian:

 Tương tác các kênh: Bằng cách xử lý đồng thời nhiều biểu đồ kênh nhiệt (khớp), các kết cấu 3D có thể tìm hiểu cách các khớp khác nhau tương tác và ảnh hưởng lẫn nhau trong bối cảnh của một hành động Sự hiểu biết toàn diện này vượt xa các chuyển động chung của cá nhân

 Phân cấp tạm thời: Bằng cách xếp chồng các lớp tích chập với kích thước kênh tích chậpthời gian ngày càng tăng, PoseConv3D xây dựng các hệ thống phân cấp tính năng Các

hệ thống này dần dần nắm được sự phụ thuộc về thời gian trong phạm vi dài hơn, cho phép mô hình tìm hiểu cấu trúc và nhịp điệu tổng thể của hành động

 Tinh chỉnh hợp nhất: Thông qua các kết nối còn lại và các yếu tố kiến trúc khác,

PoseConv3D có thể tinh chỉnh và hợp nhất các tính năng được trích xuất, đảm bảo chúng mang tính thông tin và phù hợp để nhận dạng hành động

Trang 17

Lợi ích của việc học tập theo không thời gian:

 Độ chính xác được cải thiện: Bằng cách nắm bắt cả khía cạnh không gian và thời gian của chuyển động, PoseConv3D đạt được độ chính xác vượt trội so với các phương chỉ tập trung vào một chiều

 Tính chắc chắn đối với các khớp bị tắc: Biểu đồ nhiệt 3D cung cấp thông tin theo ngữ cảnh về các khớp bị thiếu hoặc bị tắc, cho phép mô hình xử lý các tình huống thử thách tốt hơn

Khả năng khái quát hóa: Bằng cách học các mô hình không thời gian có thể khái quát hóa, PoseConv3D hoạt động tốt trên các hành động và bộ dữ liệu nhìn thấy được, thể hiện tính mạnh mẽ và tính chất thích ứng của nó

Hiểu được sự phức tạp của việc học tính năng không gian thời gian trong PoseConv3D

sẽ mở ra chìa khóa cho hiệu suất ấn tượng của nó Cách tiếp cận mạnh mẽ này đặt ra tiêuchuẩn mới cho nhận dạng hành động, mang đến những khả năng thú vị cho những tiến

bộ trong tương lai về thị giác máy tính và hơn thế nữa

II Tính chống nhiễu:

Một trong những tính năng nổi bật của PoseConv3D là khả năng chống nhiễu vượt trội trong ước tính tư thế, một yếu tố thường xuyên cản trở các nhiệm vụ nhận dạng hành động Chúng ta hãy giải thích khả năng phục hồi này phát sinh như thế nào và tầm quan trọng của nó:

Những thách thức của dữ liệu tư thế nhiễu: Các thuật toán xác định tư thế ngày càng chính xác và phức tạp nhưng điều đó không tránh khỏi lỗi, dẫn đến các vị trí không chính xác hoặc bị thiếu Các phương pháp dựa trên GCN truyền thống chủ yếu dựa vào biểu đồ chính xác được xây dựng từ các vị trí khớp Đầu vào bị sai có thể làm nhiễu các biểu đồ, dẫn đến sai về động lực chuyển động và cuối cùng là làm giảm độ chính xác.Những thế mạnh của PoseConv3D nhằm việc loại nhiễu bao gồm:

 Biểu diễn biểu đồ nhiệt: Đây chính là thuộc tính cốt lõi để giải quyết vấn đề Biểu đồ nhiệt tổng hợp thông tin trên các vị trí không gian, xử lý các lỗi riêng lẻ ở các vị trí khớp Cường độ Voxel cung cấp thêm tín hiệu về mức độ tin cậy, cho phép mô hình tập trung vào thông tin đáng tin cậy

 Bối cảnh không gian thời gian: Bằng cách nắm bắt các mối quan hệ giữa các khớp theo thời gian, PoseConv3D sẽ bù đắp cho những điểm dữ liệu bị thiếu hoặc không chính xác Mô hình có thể suy ra các vị trí khớp hợp lý dựa trên chuyển động và tương tác được quan sát trong chuỗi hành động

 Bộ lọc tích chập: Không giống như GCN dựa vào các cạnh đồ thị cố định, tích chập 3D tìm hiểu các mối quan hệ không gian trực tiếp từ biểu đồ nhiệt Tính linh hoạt này cho phép mô hình thích ứng với các thay đổi ở vị trí các khớp và xác định các kiểu chuyển động mạnh mẽ vượt qua các tư thế cụ thể

Trang 18

 Các tính năng kiến trúc: Một số kiến trúc nhất định trong PoseConv3D giúp nâng cao hơn nữa khả năng loại bỏ nhiễu Ví dụ, các kết nối còn lại giúp lan truyền thông tin đángtin cậy qua các lớp, giảm thiểu tác động lỗi.

III Khả năng mở rộng:

PoseConv3D không phụ thuộc vào các chi tiết cụ thể của kiến trúc 3D-CNN cơ bản, cho phép dễ dàng kết hợp với các mô hình 3D-CNN xương sống khác nhau Tính linh hoạt này có thể thích ứng với các tác vụ và bộ dữ liệu khác nhau, có khả năng cải thiện, khả năng khái quát hóa Ngoài ra, sự phụ thuộc của mô hình vào các hoạt động tích chập 3D hiệu quả khiến cho PoseConv3D có khả năng mở rộng hơn đối với các tập dữ liệu lớn sovới GCN

2 Trích xuất tư thế (Pose Extraction)

Ước tính dáng người (Pose Estimation) tập trung vào việc xác định vị trí góc quay của các đối tượng trong ảnh và video Các mô hình Pose Estimation giúp máy tính hiểu về cách cơ thể con người và đối tượng khác nhau được đặt trong không gian Các mô hình Pose Estimation sử dụng mạng neural để học và biểu diễn vị trí các điểm chính trên cơ thể, chẳng hạn như đầu vai, cổ, cổ tay,đầu gối, chân, Mô hình này được áp dụng trong nhiều ứng dụng, từ theo dõi chuyển động trong thể thao, đến tương tác con người - máy trong thực tế ảo Để xử lý bài toán Pose Estimation này,

chúng ta có hai hướng tiếp cận phổ biến là: Top-down Pose Estimation[9] và Bottom-up Pose Estimation[10]

Top-down Pose Estimation

Mô hình sử dụng phương pháp Top-down sẽ phân vùng người có trong khung ảnh trước

sau đó áp dụng bộ Single Person Pose Estimation (SPPE) để xác định các keypoints có

trong mỗi phân vùng Sơ đồ hoạt động của Alpha-Pose[11]- mô hình Top-down Pose

Estimation có dạng như hình bên dưới

Trang 19

Với mỗi phân vùng mô hình sẽ dự đoán nhiều skeleton và sau đó sử dụng thuật toán non maximum suppression (Pose NMS) để chọn ra skeleton có độ chính xác cao nhất Các

mô hình Top-down có độ chính xác và thời gian xử lý phụ thuộc vào mô hình nhận dạng

người và sẽ tăng lên khi số lượng người trong khung ảnh tăng Phương pháp này sẽ cực

kỳ mạnh mẽ trong việc nhận diện chính xác các tư thế của con người Tuy nhiên với những mô hình Top-down này thì độ chính xác sẽ giảm đi nếu số lượng người trong mỗi frame tăng

Bottom-up Pose Estimation

Mô hình sử dụng Bottom-up sẽ phát hiện tất cả các keypoints của mọi người trong ảnh,

sau đó mới phân chia mỗi keypoint về từng người cụ thể Luồng hoạt động của

Open-Pose[12] - một mô hình Bottom-up Pose Estimation có dạng như hình bên dưới.

Điểm mạnh của những mô hình Bottom-up là có thể xử lý được những frame có số lượng đối tượng đông hoặc các đối tượng nằm chồng lên nhau vì nó sẽ tập trung vào phát hiện tất cả các keypoint rồi mới từ những keypoint đó xây dựng lên một đối tượng

là cơ thể người hoàn chỉnh Hướng tiếp cận này vẫn còn gặp một số hạn chế, trong trường hợp chỉ có một người trong frame thì các mô hình Bottom-up sẽ gặp khó khăn trong việc phân biệt từng chi và đưa ra ước tính tư thế chính xác; bên cạnh đó việc tập trung vào các bộ phận có thể dẫn đến hiểu sai, trong đó các bộ phận không liên quan được nhóm lại với nhau thành các tư thế

Pose Extraction là một bước tiền xử lý cực kỳ quan trọng trong bài toán Skeleton-based Action Recognition, việc trích xuất khung xương và tư thế phần lớn ảnh hưởng đến độ chính xác của kết quả nhận diện sau cùng Tuy nhiên, tầm quan trọng của nó thường không được xem trọng

Hình 3: Luồng xử lý của Alpha-Pose - Mô hình sử dụng phương pháp Top-down Pose Estimation

Hình 4: Luồng hoạt động của Open-Pose - một mô hình Bottom-up Pose Estimation

Trang 20

trước đó, trong khi đó các tư thế được ước tính bằng cảm biến hay những bộ Pose Estimator trước

đó được sử dụng mà không xem xét các tác động tiềm ẩn Ở đây chúng ta có thể tiến hành đánh giá các khía cạnh chính của việc trích xuất tư thế nào tốt để triển khai

Nói chung, những tư thế 2D có chất lượng tốt hơn tư thế 3D Chúng ta sử dụng những bộ 2DTop-Down Pose Estimator cho bài toán Pose Extraction So với phương pháp 2D Bottom-up, Top-

down đạt được hiệu suất vượt trội trên bộ dữ liệu chuẩn COCO-keypoints[13] Trong hầu hết các

trường hợp, đầu ra từ bộ Human Detector được đưa vào các bộ Top-down Pose Estimator đủ để tạo

ra các tư thế 2D có chất lượng tốt cho bài toán Action Recognition Khi mà chỉ một số ít được quan tâm trong số nhiều những ứng viên, một số ưu tiên cần thiết cho việc nhận diện hành vi đạt được hiệu suất tốt ví dụ như biết vị trí đối tượng ngay trong frame đầu tiên của video Trong những

nghiên cứu trước đây, để lưu trữ các biểu đồ nhiệt, ta thường lưu trữ dưới dạng bộ ba tọa độ (x, y,

c), trong đó c đánh dấu điểm tối đa của heatmap, (x, y) là tọa độ tương ứng với c Trong những thí

nghiệm, việc tìm ra bộ ba (x, y, c) sẽ giúp tiết kiệm được phần lớn không gian lưu trữ những đánh

đổi lại sẽ giảm một ít hiệu suất

2.1 Phát hiện con người (Human Detection)

Giống như não người, một hệ thống nhận diện hành động cần phải xác định đâu là đối tượngcủa nó trong một bối cảnh, vị trí mà đối tượng đó đang hiện diện Để xử lý bài toán này, người ta

thường sử dụng các kiến trúc mạng neural tích chập (Convolutional Neural Network) (CNN) để

phát hiện đối tượng

Ở bài luận văn này, em sẽ sử dụng Faster R-CNN[14] để phát hiện con người

Faster R-CNN là một kiến trúc mạng học sâu cho bài toán nhận diện đối tượng, được đề xuất bởi Shaoqing Ren và các cộng sự tại Microsoft Research trong bài báo năm 2016 có tiêu đề

“Faster R-CNN: Towards Real-Time Object Detection with Region Proposal Networks” Trước Faster R-CNN, bài toán phát hiện đối tượng được giải quyết bằng các kiến trúc như R-CNN và Fast R-CNN Tuy nhiên, các kiến trúc này đều có một số hạn chế như:

Tốn thời gian: R-CNN[15] cần phải tạo ra tất cả các vùng đề xuất (region proposal) trước

khi thực hiện bước phát hiện đối tượng Điều này làm cho R-CNN tốn thời gian, đặc biệt là khi xử lý các ảnh có kích thước lớn

Hình 5: Kiến trúc Faster R-CNN

Trang 21

 Tốn tài nguyên: Fast R-CNN cải thiện được tốc độ bằng cách sử dụng vùng đề xuất được tạobởi RPN Tuy nhiên RPN cần phải tạo ra một số lượng lớn vùng đề xuất, gây tốn tài nguyên.Faster R-CNN giải quyết được các hạn chế trên bằng cách kết hợp RPN và Fast R-CNN thành một kiến trúc duy nhất Trong Faster R-CNN, RPN tạo ra các vùng đề xuất có khả năng chứa đối tượng Các vùng đề xuất này sau đó sẽ được sử dụng làm đầu vào cho Fast R-CNN để thực hiệnphát hiện đối tượng.

Region Proposal Network (RPN)[16]: RPN là sự cải tiến chính làm cho mạng Faster

R-CNN trở nên tốt nhất trong họ nhà R-R-CNN, RPN giải quyết các vấn đề bằng cách huấn luyện mạng neural network để đảm nhận thay vai trò của các thuật toán như selective search vốn rất chậm chạp.Một Region Proposal Network nhận đầu vào là ảnh với kích thước bất kì

và cho đầu ra là region proposal (tập vị trí của các hình chữ nhật có thể chứa vật thể), cùng với xác suất chứa vật thể của hình chữ nhật tương ứng

RPN có hai bước chính:

 Feed forward ảnh qua DNN để thu được convolutional features: Ở đây , ta có

thể sử dụng các mạng backbone có sẵn như VGG-16[17], resnet50[18]

 Sử dụng cửa sổ trượt lên convolutional features: Để tạo ra region proposals, chúng ta sử dụng một cửa sổ trượt còn gọi là sliding window Đầu ra của layer này là đầu vào của 2 fully-connected layer dự đoán vị trí của regions (box-regression layer), cũng như xác suất chứa object (box-classification) củahộp ấy Tại mỗi vị trí của cửa sổ trượt chúng ta dự đoán đồng thời nhiều

nhiều region proposal cùng một lúc, với k là số proposal tương ứng với mỗi

vị trí Vậy reg layer có 4k đầu ra dự đoán vị trí của k proposal, cls layer chứa

2k đầu ra dự đoán xác suất chứa vật thể hoặc không chứa vật thể của mỗi

proposal k proposals được tham chiếu hóa tới k boxes, còn được gọi là

anchor.

Hình 6: Region proposal network (RPN)

Trang 22

Fast R-CNN: Faster R-CNN cũng có một mạng backbone CNN, một lớp ROI pooling layer

và một lớp kết nối đầy đủ, tiếp đến là hai nhánh con để thực hiện hai nhiệm vụ đó là phân lớp cho đối tượng và tìm bounding box tốt nhất dựa vào thuật toán regression

Faster R-CNN là một kiến trúc mạng học sâu hiệu quả cho bài toán phát hiện đối tượng Kiến trúc này đã đạt được những thành tựu đáng kể trong các cuộc thi phát hiện đối tượng, đồng thời được ứng dụng rộng rãi trong nhiều lĩnh vực như nhận dạng hình ảnh, tự lái xe, giám sát video,

2.2 Ước tính tư thế (Pose Estimation)

Sau khi qua bộ Human Detector để xác định được đâu là đối tượng người trong một khung ảnh (frame), tiếp đến chúng ta cần phải ước tính được dáng người của đối tượng Ước tính dáng người (Pose Estimation) tập trung vào việc xác định vị trí góc quay của các đối tượng trong ảnh và video Các mô hình Pose Estimation giúp máy tính hiểu về cách cơ thể con người và đối tượng khácnhau được đặt trong không gian

Các mô hình Pose Estimation sử dụng mạng neural để học và biểu diễn vị trí các điểm chínhtrên cơ thể, chẳng hạn như đầu vai, cổ, cổ tay, đầu gối, chân, Mô hình này được áp dụng trong nhiều ứng dụng, từ theo dõi chuyển động trong thể thao, đến tương tác con người - máy trong thực

tế ảo

Quá trình đào tạo mô hình Pose Estimation đòi hỏi một lượng lớn dữ liệu được gán nhãn vị trí chính xác của các điểm trên cơ thể Các kiến trúc mạng thường được sử dụng là các mô hình học sâu như CNN hoặc mô hình Transformer để trích xuất đặc trưng phức tạp từ ảnh đầu vào

2.2.1 High-Resolution Network

High-Resolution Network (HRNet)[19] là một kiến trúc mạng neural đặc biệt được thiết kế

cho những nhiệm vụ nhận diện vị trí và ước lượng dáng người với độ phân giải cao Một trong những đặc điểm nổi bật của HRNet là khả năng giữ nguyên độ phân giải cao cho đến tất cả các tầngcủa mạng, điều này giúp giữ lại thông tin chi tiết quan trọng trong quá trình trích xuất đặc trưng Thay vì giảm độ phân giải ở các tầng sâu của mạng để giảm độ phức tạp tính toán, HRNet duy trì

Hình 7: Kiến trúc Fast R-CNN

Trang 23

độ phân giải cao, từ đó cung cấp khả năng hiểu chi tiết và cấu trúc phức tạp của các đối tượng trong hình ảnh

Ý tưởng chính: HRNet sẽ duy trì độ phân giải cao của các đặc trưng xuyên suốt quá trình ảnh được truyền vào mạng Kiến trúc sẽ chia thành nhiều tầng, tầng phía sau sẽ sinh ra đặc trưng có

độ phân giải thấp và sâu hơn, tuy nhiên vẫn duy trì đặc trưng có độ phân giải ở tầng trước đó

Quan sát ở luồng số 1, qua nhiều tầng, đặc trưng độ phân giải cao (ký hiệu màu vàng) sẽ được duy trì Bắt đầu từ tầng số 2, đặc trưng có độ phân giải thấp và sâu hơn (màu cam) sẽ được sinh ra, đặc trưng độ phân giải cao màu vàng này sẽ được bổ sung ngữ nghĩa bởi đặc trưng màu cam

và ngược lại Cứ như vậy qua nhiều tầng, các đặc trưng có các độ phân giải khác nhau sẽ được bổ sung ngữ nghĩa cho nhau, dẫn đến cuối cùng ta sẽ thu được đặc trưng độ phân giải cao tuy nhiên chất lượng vẫn rất tốt

Trong Hình 8 minh họa mạng HRNet bao gồm 04 giai đoạn Luồng xử lý chính được mô tả một cách logic bằng công thức sau:

Trong đó Nsr là một nhánh đặc trưng tại giai đoạn thứ s, và r là chỉ mục độ phân giải Độ phân giải ở giai đoạn đầu tiên sẽ là r = 1, độ phân giải thứ r sẽ bằng 1/(2r-1) độ phân giải ở giai đoạnđầu tiên.Việc kết hợp đặc trưng là để trao đổi thông tin ngữ nghĩa giữa các đặc trưng có nhiều độ phân giải khác nhau, và được lặp lại nhiều lần Ví dụ ở Hình 12, việc kết hợp giữa các độ phân giải được lặp lại 04 lần

Hình 8: Kiến trúc HRNet

Trang 24

Quan sát ở Hình 9, ta thấy có ba đặc trưng có độ phân giải khác nhau Ta gọi đặc trưng đầu vào là Ri, đặc trưng sau khi kết hợp là Ro

r Ta có ba đặc trưng như vậy mỗi loại, như vậy r = 1,2,3 Một đầu ra tại độ phân giải thứ r (Ro

r) được tính như sau:

Tại điểm giao giữa giai đoạn 3 và 4 sẽ có thêm một đặc trưng Ro :

Trong đó, fxr(.) là phép biến đổi của đặc trưng có độ phân giải đầu vào là x và độ phân giải đầu ra là r Việc lựa chọn phép biến đổi tùy thuộc vào x và r

 Trường hợp x = r, fxr(R) = R

 Trường hợp x < r, fxr(R) là một phép tích chập (r - s) sử dụng lớp tích chập 3 x 3 có stride = 2

 Trường hợp x > r, fxr(R) là một phép upsampling song tuyến, sau đó sẽ đi qua một lớp tích chập 1 x 1 để kiểm soát số chiều của đặc trưng

HRNet là kiến trúc mạng có thể duy trì được các biểu diễn có độ phân giải cao trên toàn mạng, không giống nhưng các phương pháp thông thường giảm dần mẫu và sau đó tăng mẫu Điều này cải thiện đáng kể độ chính xác và độ chắc chắn trong việc định và nhận dạng các điểm chính, đặc biệt đối với các khớp nhỏ và có khoảng cách gần nhau Bên cạnh đó HRNet còn sử dụng nhiều nhánh song song với độ phân giải khác nhau giúp trao đổi thông tin giữa các nhánh thông qua phản ứng tổng hợp đa qui mô lặp đi lặp lại Điều này khiến mô hình mạnh mẽ trong nắm bắt các đặc điểm ở nhiều qui mô khác nhau, giúp nâng cao hiểu biết về ngữ nghĩa và độ chính xác về không gian Vì vẫn giữ được độ phân giải cao của các feature map nên HRNet có thể dễ dàng nắm bắt được những chuyển động của các khớp cho dù có bị che khuất một phần, hay bị chồng chất các đối tượng lên nhau

HRNet Thể hiện hiệu suất vượt trội trên các tập dữ liệu chuẩn như COCO và MPII Human Pose, đặc biệt đối với các tình huống đầy thách thức với các tư thế và tư thế che khuất phức tạp

Hình 9: Minh họa cách kết hợp thông tin ngữ nghĩa giữa các đặc trưng độ phân giải cao, trung

bình và thấp.

Trang 25

Kiến trúc linh hoạt có thể thích ứng với nhiều nhiệm vụ ước tính tư thế khác nhau, bao gồm ước tính tư thế 2D, 3D, một người, nhiều người và dựa trên video.

Tóm lại, kiến trúc độc đáo của HRNet mang lại những lợi thế khác biệt cho việc ước tính tư thế dựa trên bộ xương, khiến nó trở thành một phương pháp đầy hứa hẹn để giải quyết những thách thức chung trong lĩnh vực này

Bằng phương pháp Top-down Pose Estimation, biểu đồ nhiệt thường được lưu dưới dạng bộ

ba tọa độ (x, y, c), trong đó c đánh dấu điểm tối đa của heatmap, (x, y) là tọa độ tương ứng với c

Việc lưu trữ dưới dạng những bộ ba như thế tiết kiệm phần lớn không gian

3 Từ tư thế 2D chuyển thành khối biểu đồ nhiệt 3D

Sau khi trích xuất được tư thế 2D từ video, chúng ta sẽ chuyển chúng thành những 3D heatmap volume Có nghĩa là, chúng ta sẽ biểu diễn một tư thế 2D dưới dạng heatmap có kích thước

K x H x W với K là số các khớp, H và W là kích thước của frame Chúng ta có thể trực tiếp sử dụng

những heatmap đó làm những heatmap mục tiêu, những heatmap này sẽ được qua một bước gọi là zero-padding để cho khớp với kích thước gốc của frame tương ứng Trong trường hợp ta chỉ có một

bộ ba tọa độ (x k , y k , c k ) của khớp, ta có thể có được biểu đồ nhiệt dành cho các khớp J bằng cách sử dụng bản đồ gaussian K tập trung ở mỗi khớp theo công thức:

với k [0, ∈[0, K],i [0, ∈[0, H],j [0, ∈[0, W] và σ (default = 0.6) được sử dụng để kiểm soát phân phối giá

trị của các điểm quanh keypoint (phân phối chuẩn)

Đồng thời chúng ta cũng có thể tạo ra biểu đồ nhiệt cho các chi (limb heatmap) L tương tự J:

Cách tạo limb heatmap thì phức tạp hơn so với joint heatmap, tuy nhiên, quy trình vẫn vậy, thứ thay đổi duy nhất chỉ là công thức cập nhật heatmap theo giá trị keypoint Ở đây, với heatmap

L [0]∈[0, K ∗H∗W, K lúc này lại là số lượng limb Với l [0, ∈[0, K],i [0, ∈[0, H],j [0, ∈[0, W], limb thứ k tương ứng với khung xương được tạo bới 2 điểm keypoint a k ,b k , D là 1 hàm tính khoảng cách từ điểm (i,j) đến đường nối [a k ,b k]

Khi đó, với mỗi frame, chúng ta có 1 heatmap có số chiều là K H W ∗H∗W ∗H∗W Tương ứng, stack lại

T frames, chúng ta thu được một 3D heatmap volume có số chiều là T K H W ∗H∗W ∗H∗W ∗H∗W (reshape lại thành

K T H W ∗H∗W ∗H∗W ∗H∗W để tạo input cho các kiến trúc 3D-CNN).

Trang 26

Trong quá trình thực nghiệm, để giảm thiểu sự dư thừa trong những 3D heatmap volume, chúng ta có thể sử dụng hai kỹ thuật:

Cắt tỉa để lấy đối tượng làm trung tâm (Subject-Centered Cropping)[20]:

Để cho heatmap lớn bằng frame không hiệu quả, đặc biệt khi đối tượng chỉ nằm trong một khu vực nhỏ của frame Trong trường hợp này, chúng ta hãy tìm bounding box nhỏ nhất chứa tất cả các đối tượng là các tư thế 2D trong frame Sau đó chúng ta cắt tất cả các frame theo box tìm được và thay đổi kích thước của chúng theo kích thước của đã được xác định

Do đó kích thước của 3D heatmap volume có thể giảm về mặt không gian trong khi tất cả các tư thế 2D vẫn được giữ nguyên Quan sát box màu đỏ trong hình 9 chính là cropping box, chúng ta có thể cắt tỉa những phần xung quanh của nó để có thể giảm khối lượng của heatmap nhưng vẫn giữ thông tin của các tư thế 2D trong frame

Vì qui mô và vị trí của các đối tượng có thể khác nhau rất nhiều trong một tập dữ liệu nên việc tập trung vào đối tượng hành động là chìa khóa để lưu giữ càng nhiều thông tin càng tốt

với kích thước H x W tương đối nhỏ Để xác thực điều này, chúng ta tiến hành một cặp thử

nghiệm trên FineGYM với kích thước 32 x 56 x 56, có hoặc không cắt xén lấy đối tượng làm trung tâm rất hữu ích trong quá trình tiền xử lý dữ liệu, giúp cải thiện Mean-Top1 thêm 1% từ 91,7% lên 92,7%

Lấy mẫu thống nhất (Uniform Sampling)[21]

Đầu vào được lấy mẫu từ một cửa sổ thời gian nhỏ có thể nắm bắt được toàn bộ tất cả thông tin về hành động của con người Để xác thực điều này, chúng ta có thể tiến hành thử nghiệm

Hình 10: Ví dụ cho 3D joint heatmap volume và 3D limb heatmap volume

Hình 11: Mô tả kĩ thuật Subject-Centered Cropping

Trang 27

trên hai bộ dữ liệu FineGYM và NTU-60 So sánh lấy mẫu 32 frame bằng hai phương pháp Uniform Sampling và Fixed-Stride Sampling (stride = 2, 3, 4) Kết quả là Uniform Samplingvượt trội hơn hẳn, do khả năng có thể nắm bắt được thông tin toàn bộ video đầy đủ hơn được thể hiện dưới hình 10.

Để lấy mẫu một clip T-frame từ video, Uniform Sampling về cơ bản chia video thành T đoạn

có độ dài bằng nhau và lấy mẫu ngẫu nhiên một frame từ mỗi đoạn

4 Những kiến trúc 3D-CNN phù hợp để áp dụng cho bài toán based Action Recognition

Skeleton-Đối với bài toán Skeleton-based Action Recognition, GCN từ lâu đã trở thành phương pháp xương sống Nhưng 3D-CNN lại cho thấy bản thân mình rất hiệu quả và thường được sử dụng trongnhững bài toán RGB-based Action Recognition nhưng lại ít được sử dụng Để chứng minh sức

Hình 12: So sánh hiệu suất của Fix-Stride Sampling và Uniform Sampling

Hình 13: Mô tả kỹ thuật Uniform Sampling

Trang 28

mạnh của 3D-CNN trong việc học những tính năng không thời gian trong chuỗi các khung xương, PoseConv3D sẽ chú trọng thực hiện các nhận diện tư thế con người và được trình bày chi tiết bên dưới.

PoseConv3D sẽ chú trọng vào phương thức nhận diện tư thế dựa trên khung xương, nó sử dụng heatmap volumes để làm đầu vào và có thể khởi tạo bằng những mạng xương sống 3D-CNN khác nhau Cần có hai sửa đổi để 3D-CNN phù hợp với bài toán Skeleton-based Action

3D-Dựa trên những nguyên tắc đó, nhóm tác giả đã triển khai ba kiến trúc 3D-CNN: C3D, SlowOnly, X3D cho bài toán Skeleton-based Action Recognition Những biến thể khác nhau để triển khai 3D-CNN đã được điều chỉnh để đánh giá dựa trên bộ dữ liệu NTURGB+D-X-Sub làm benchmark

1 C3D[22]: là một trong những model 3D-CNN đầu tiên được phát triển cho bài toán

action recognition (vai trò tiên phong như AlexNet trong bài toán image classification), bao gồm 8 lớp 3D-CNN Để áp dụng lên heatmap volume, C3D được giảm đi 1 nửa channel-width (từ 64 thành 32) Ngoài ra, trong 1 phiên bản nhỏ gọn

hơn C3D-s (hoặc C3D Light), thậm chí bỏ hẳn đi 2 layer cuối.

2 SlowOnly[23]: SlowOnly cũng là 1 model 3D-CNN giải quyết bài toán RGB based

action recognition Nó được xây dựng bằng cách inflating các lớp ResNet trong hai stage cuối để chuyển từ 2D sang 3D Về cơ bản thì không có paper riêng về

SlowOnly, do nó lần đầu được giới thiệu trong mô hình SlowFast Để áp dụng lên heatmap volume, SlowOnly cũng tương tự, được giảm 1 nửa channel-width (từ 64 thành 32), đồng thời loại bỏ stage đầu trong 4 stage Một số biến thể khác của

Hình 14: Kiến trúc mạng C3D

Trang 29

SlowOnly như SlowOnly-wd, SlowOnly-HR với thí nghiệm nâng độ phức tạp trong

thiết kế, nhưng kết quả đạt được không cải thiện gì nhiều

3 X3D[24]: X3D có thể được coi như SOTA hiện tại trong 3D-CNN model (cả về hiệu

suất, số lượng tham số hay FLOPs) Để hiểu hơn về X3D, mình nghĩ mọi người nên đọc paper trực tiếp, chứ một vài dòng giới thiệu là không đủ để diễn tả Do X3D cũng đủ nhỏ nhẹ rồi, nên nhóm tác giả cũng không thay đối thiết kế quá nhiều ngoại

trừ việc bỏ đi stage đầu tiên Với phiên bản nhỏ gọn X3D-s (hoặc X3D shallow)

cũng chỉ đơn giản là loại bỏ đi 1 số lớp ở mỗi stage của mô hình

Việc áp dụng những phiên bản rút gọn của 3D-CNN có thể giảm đáng kể độ phức tạp của thuật toán và cost là hiệu suất giảm nhẹ (<= 0,3% cho tất cả các mạng 3D-CNN làm backbone) Trong thí nghiệm, nhóm tác giả đã sử dụng SlowOnly làm backbone (vì tính đơn giản của nó vì

được tăng cường từ ResNet50) và hiệu suất tốt cho bài toán Action Recognition PoseConv3D có

thể vượt trội hơn các phương pháp GCN hay 2D-CNN trên nhiều benchmark cả về accuracy lẫn độ hiệu quả Điều quan trọng là khả năng tương tác giữa PoseConv3D với các kiến trúc mạng phổ biếntrong bài toán nhận diện hành vi dựa trên RGB là khá cao, điều này có thể biến các mạng kết hợp với PoseConv3D trở thành những mô hình kết hợp đa phương thức

Hình 15: Kiến trúc mạng SlowOnly

Hình 16: Kiến trúc mạng X3D

Trang 30

CHƯƠNG II ỨNG DỤNG PHƯƠNG PHÁP POSECONV3D VÀO BÀI TOÁN PHÁT HIỆN HÀNH VI GIAN LẬN

TRONG PHÒNG THI

A Dữ liệu, cấu hình tối thiểu, thông số đánh giá.

1. Giới thiệu bộ dữ liệu

Những bộ dữ liệu cho pre-trained model:

FineGYM[25]: FineGYM là một bộ dữ liệu chi tiết cho bài toán nhận diện hành động Nó

gồm 29.000 video quay 99 lớp hành động thể dục Trong quá trình trích xuất tư thế, người thu thập dữ liệu so sánh ba loại hộp giới hạn bao quanh người khác nhau: 1 Hộp giới hạn

dùng để phát hiện con người (Detection); 2 Hộp giới hạn GT cho vận động viên ở khung đầu tiên, hộp theo dõi cho các khung còn lại (Tracking); 3 Hộp giới hạn GT cho vận động viên trong mọi khung hình (GT) Trong các thử nghiệm, chúng ta có thể sử dụng các tư thế

của con người được trích xuất bằng loại hộp giới hạn thứ ba trừ khi có ghi chú khác

NTURGB+D[26]: NTURGB+D là bộ dữ liệu nhận dạng hành động của con người quy mô

lớn được thu thập trong phòng thí nghiệm Nó có hai phiên bản là NTU-60 và NTU-120 (là một bộ mở rộng của NTU-60): NTU-60 chứa khoảng 57.000 video quay 60 hành động của con người Trong khi đó, NTU-120 chứa khoảng 114.000 video quay 120 hành động con

người Chúng ta có thể chia hai bộ dữ liệu trên theo ba cách: Đan xen chủ thể (X-Sub), Đan xen góc nhìn (X-View, dành cho NTU-60), Đan xen thiết lập (X-Set, dành cho NTU-120)

Bộ xương 3D được thu thập bởi các cảm biến có sẵn cho bộ dữ liệu này Trừ khi có quy định

khác, người thu thập dữ liệu tiến hành thử nghiệm phân tách X-sub cho 60 và

NTU-120

Hình 17: Bộ dữ liệu FineGYM

Trang 31

Kinetics400[27], UCF101[28], and HMDB51[29]: Ba bộ dữ liệu này là các bộ dữ liệu

nhận dạng hành động chung được thu thập từ web Kinetics400 là bộ dữ liệu qui mô lớn với khoảng 300.000 video từ 400 lớp hành động UCF101 và HMDB51, chứa 13.000 video từ

101 lớp và 6.700 video quay 51 lớp Chúng ta tiến hành thử nghiệm bằng cách sử dụng các chú thích tư thế 2D được trích xuất bằng quy trình Từ-trên-xuống

Hình 19: Bộ dữ liệu Kinetics400

Trang 32

Volleyball[30]: Volleyball là bộ dữ liệu nhận dạng hoạt động nhóm với 4.830 video về 8 lớp

hoạt động nhóm Mỗi khung chứa khoảng 12 người, trong khi chỉ có khung trung tâm có chú thích cho hộp người GT Chúng ta sử dụng các hộp theo dõi từ để trích xuất tư thế

Bộ dữ liệu hành vi gian lận trong thi cử:

C7SAV: C7SAV được nghiên cứu và chọn ra 7 lớp hành động Trong đó có 5 lớp hành động

được gán là hành động gian lận trong phòng thi: Chồm phía trước copy bài của người ngồi trước, Khều người người bàn trên hỏi bài, Cuối xuống nhặt tài liệu dưới đất, Xem tài liệu bên dưới bài thi, Chồm sang hai bên copy bài của người kế bên; và 2 lớp hành động được gán nhãn là không gian lận trong phòng thi Mỗi lớp có khoảng 200 video quay những hành

vi mà sinh viên thực hiện trong phòng thi

Hình 20: Bộ dữ liệu Volleyball

Ngày đăng: 24/03/2024, 10:57

TÀI LIỆU CÙNG NGƯỜI DÙNG

  • Đang cập nhật ...

TÀI LIỆU LIÊN QUAN

w