.7 Dữ liệu khung xương Kinect và véc tơ chân tay

Một phần của tài liệu Về mô hình nhận dạng tư thế võ dựa trên ảnh chiều sâu758 (Trang 118)

Bảng 3.1 Thể hiện tám véc tơ chi1 Khủy tay trái 5 Cánh tay trái 1 Khủy tay trái 5 Cánh tay trái 2 Khủy tay phải 6 Cánh tay phải

3 Đùi trái 7 Bắp chân trái

4 Đùi phải 8 Bắp chân phải

thường không đáng kể. Do đó trong giai đoạn ban đầu này, nghiên cứu loại bỏ

bàn tay và bàn chân ra khỏi nhóm đại diện để đảm bảo sự vững mạnh của mô tả.

Tóm lại, nhóm đại diện bao gồm tám vectơ chi (Bảng 3.1). Như chúng ta có thể

thấy, kích thước dữ liệu được giảm đáng kể trong khi các thông tin cần thiết của động

tác vẫn được giữ lại tốt. c.Đánh giá động tác:

Sau khi chọn động tác biểu diễn thích hợp, chúng ta có thể tính toán góc nằm

giữa vectơ chi tương ứng thu được thực tế và các động tác chuẩn sử dụng công thức

tập dữ liệu động tác chuẩn từ thư viện trước khi bắt đầu. Các động tác chuẩn sẽ lần

lượt được hiển thị trên màn hình dưới dạng hình ảnh của khung xương (Hình 3.8, bên tay phải)...vv.

Hình 3.8 Chương trình thu nhận dữ liệu chuẩn từ võ sư. 3.3.2.2 Công thức chấm điểm

Xem xét thực tế, nghiên cứu quan sát được từ các thí nghiệm, nghiên cứu gán

trọng số khác nhau cho từng thành viên trong mảng khoảng cách và sử dụng tổng

trọng số để bù đắp cho sự sai lệch thị giác. Nghiên cứu đề xuất một công thức chấm điểm như công thức (3.10).

Trước tiên là tham số khoảng cách D:

D= [f 1(α1+ α 2) + f 2(α3+ α 4) + f 3(α5+ α 6) + f 4(α7+ α 8)] (3.6)

Trong đó αi là biểu thị góc một thành viên của AngleDif f, D biểu thị các tham

số khoảng cách duy nhất tính từ mảng, f 1, f2, f3, f4, biểu thị các giá trị trọng số của

các chi ước lượng được sử dụng công thức (3.7).

cosα = xstxre + ystyre + zstzre p x2st + y 2 st + z2 stp x2re + y2 re + z 2 re (3.7) Trong đó (xst, yst, zst) biểu thị tọa độ của một vectơ chi của các cử chỉ chuẩn, (xre, yre, zre) biểu thị tọa độ của một vectơ chân tay của động tác trong thời gian thực.

Nghiên cứu xác định tập hợp bao gồm tám góc như là mảng khoảng cách AngleDiff = α1, α2, α3, α4, α5, α6, α7, α8 ( xem Bảng 3.1), nó chứa hầu hết các thông tin về khoảng

cách giữa động tác trong thời gian thực và động tác chuẩn.

Để tính toán các giá trị trọng số, hệ thống sẽ tự động thu thập 10 cặp cử chỉ gần

đây nhất được xếp loại từ cơ sở dữ liệu mà có số điểm trong khoảng ± 15% và tham khảo trung bình cộng của mỗi α i. Giá trị trọng số được tính như công thức (3.8)

fi = 1

AvgiP i=14 Avg1 i

(3.8) Trong đó Avg1, Avg2, Avg3, Avg4 biểu thị trung bình cộng của khuỷu tay (α 1 + α 2), đùi (α3 + α 4), cánh tay α( 5+ α 6) và cẳng chân (α 7+ α8). Thao tác này sẽ gán trọng số lớn hơn tới các chi mà được đánh giá chặt chẽ hơn theo người chấm.

Sau khi nghiên cứu đã nhận giá trị D, mục tiêu của nghiên cứu là để D vào chia

phần trăm điểm. Nhiệm vụ là tương đối đơn giản bằng cách sử dụng biến đổi tuyến

tính. Nghiên cứu cho phép người dùng nhập vào một giá trị chuẩn D st và số điểm tham

chiếu của nó Sst.

Trong trường hợp phán đoán cử chỉ một người biểu diễn thường không được phép đi chệch khỏi những cử chỉ chuẩn quá nhiều. Nghiên cứu xác định một hàm giới hạn

độ lệch cho phép người dùng nhập vào một giá trị ngưỡng M (độ) để hạn chế độ lệch

không thể chấp nhận những cử chỉ như trong công thức (3.9).

f α( max) = 1 0 4. M2α2

max (3.9)

Trong đó α max biểu thị tối đa trong AngleDiff. Hàm có một số tính năng:

f(0) = 1. Khi cử chỉ thời gian thực giống hệt với những cử chỉ tiêu chuẩn, giá trị

hàm là 1.

f0(αmax) 0< , f ”(αmax ) 0< , khi bao gồm góc tăng tối đa, giá trị hàm giảm mạnh.

f M( ) = 0, khi tối đa bao gồm cách tiếp cận góc hoặc vượt quá giá trị ngưỡng,

Khi đó ta có công thức chấm điểm sẽ là:

Score f α= ( max ) [(. Dst D)× 100Sst

Dst + Sst (3.10)

Trong đó f α( max) biểu thị hàm giới hạn độ lệch. D st có thể tự thiết lập bởi người sử dụng theo nhu cầu của họ, D st nhỏ hơn chỉ ra tiêu chuẩn cao hơn về phân loại S st

cung cấp cho người dùng một tùy chọn để kiểm soát các điểm trong phạm vi mong muốn.

Với các tính năng trên, điểm số sẽ được hạn chế một cách hợp lý khi độ lệch giữa

thời gian thực cử chỉ và điệu bộ tiêu chuẩn, tức là số điểm cao đòi hỏi phải thực hiện

trơn tru của tất cả chân tay.

3.4 Thực nghiệm

3.4.1 Nhận diện động tác tấn công

3.4.1.1 Nhận diện động tác tấn công bằng cây phân loại

1. Thử nghiệm với bộ dữ liệu K3HI [50] được công bố trên mạng: Thuật toán được thử nghiệm với bộ dữ liệu K3HI [50] được công bố trên mạng chứa các dữ liệu

tọa độ 3D của bộ xương người. Trong đó, các khớp nối cho mỗi người đã được trích xuất bằng phần mềm OpenNI (Open Natural Interaction) với NITE do PrimeSense

cung cấp. Một bộ xương được thể hiện bằng các vị trí 3D của 15 khớp, bao gồm đầu, cổ, vai trái, vai phải, khuỷu tay trái, khuỷu tay phải, tay trái, tay phải, thân, hông

trái, hông phải, đầu gối trái, đầu gối phải, trái chân và bàn chân phải. Bộ K3HI đã

được xây dựng với một số hành vi cụ thể. Từ tập các khung xương, nghiên cứu tiến

hành gán nhãn trạng thái cho từng khung xương để làm dữ liệu thử nghiệm. Cụ thể,

với hành vi kicking của bộ K3HI, sau khi gán nhãn ta thu được bộ dữ liệu 3752 mẫu khung xương.

Thử nghiệm được tiến hành theo cách kiểm chứng chéo 10-fold, tức là chia bộ

dữ liệu làm 10 phần, tiến hành 10 lần thử, lần lượt mỗi lần lấy 9 phần để học và thử

nghiệm 1 phần còn lại, tổng kết lại kết quả chính xác 3423/3752 91.231343% Với

một số lựa chọn khác nhau về chiều cao của cây quyết định được xây dựng, biểu đồ

cho thấy khi chiều cao của cây tăng, tức là nhiều đặc trưng được kết hợp hơn, độ chính xác cũng tăng theo như Hình 3.9. Từ đó cũng chứng minh tính hiệu quả của những

đặc trưng không gian được sử dụng và cách kết hợp.

2. Thử nghiệm với bộ dữ liệu 36 thế võ thu bằng Kinect trong đó :

Bộ cơ sở dữ liệu sau khi ước lượng ở chương 2 với khung xương 20 điểm, 15083

Hình 3.9 Thể hiện chiều cao của cây và số đặc trưng.

nghiệm tương tự với bộ dữ liệu K3HI

Cách thức kiểm chứng chéo (cross validation) 5 lượt (folds).Lựa chọn khác nhau

về chiều cao của cây.Biểu đồ cho thấy khi chiều cao của cây tăng, tức là nhiều đặc

trưng được kết hợp hơn, độ chính xác cũng tăng theo, từ đó cũng chứng minh tính

hiệu quả của những đặc trưng không gian được sử dụng và cách kết hợp như trong Hình 3.9.

3.4.1.2 Nhận diện động tác tấn công bằng mạng nơ ron

Đồng thời với việc nhận dạng động tác tấn công bằng phương pháp cây phân loại

thì nghiên cứu cũng thực hiện trên phương pháp mới hơn là sử dụng mạng trí nhớ ngắn

định hướng dài hạn (Long Short term memory) còn được viết tắt là LSTM. LSTM là

một kiến trúc đặc biệt của RNN có khả năng học được sự phụ thuộc trong dài hạn

(long-term dependencies) được giới thiệu bởi Hochreiter và Schmidhuber (1997). Kiến

trúc này đã được phổ biến và sử dụng rộng rãi cho tới ngày nay. LSTM đã tỏ ra khắc

phục được rất nhiều những hạn chế của RNN trước đây về triệt tiêu đạo hàm. Tuy

nhiên cấu trúc của chúng có phần phức tạp hơn mặc dù vẫn giữ được tư tưởng chính

của RNN là sự sao chép các kiến trúc theo dạng chuỗi. Một mạng RNN tiêu chuẩn sẽ có kiến trúc rất đơn giản chẳng hạn như đối với kiến trúc gồm một tầng ẩn là hàm

tanh như hình 3.10 bên dưới . LSTM cũng có một chuỗi dạng như thế nhưng phần

kiến trúc lặp lại có cấu trúc khác biệt hơn. Thay vì chỉ có một tầng đơn, chúng có tới

4 tầng ẩn (3 sigmoid và 1 tanh) tương tác với nhau theo một cấu trúc đặc biệt. Các kí

hiệu có thể diễn giải như sau:

Trong sở đồ tính toán trên, mỗi một phép tính sẽ triển khai trên một véc tơ. Trong

đó hình tròn màu hồng biểu diễn một toán tử đối với véc tơ như phép cộng véc tơ, phép nhân vô hướng các véc tơ. Màu vàng thể hiện hàm activation mà mạng nơ ron

sử dụng để học trong tầng ẩn, thông thường là các hàm phi tuyến sigmoid và tanh. Kí

Hình 3.10 Sự lặp lại kiến trúc module trong mạng RNN chứa một tầng ẩn

thẳng rẽ nhánh thể hiện cho nội dung véc tơ trước đó được sao chép để đi tới một phần

khác của mạng nơ ron.

Cũng sử dụng bộ cơ sở dữ liệu của camera Kinect ở chương trước, sau khi được

ước lượng trong không gian 3D để có các tọa độ chuẩn hơn thì lựa chọn ra 14 điểm

key có khả năng mô tả đăc trưng của thế võ nhằm làm giảm kích thước đầu vào của

mạng nơ-ron. Tại frame đầu tiên của mỗi video, chọn đường thẳng đi qua đầu và bụng

làm trục tham chiêu cho sự thay đổi vị trí của các điểm trên cơ thể, từ đó ta tính đươc

vị trí của mỗi điểm cơ thể tại các frame khác nhau. Như vây mỗi frame được quy đổi

thành một vector 14 chiều ;tương ứng với 14 vị trí của các điểm trên cơ thể. Mỗi video

sẽ được chuẩn hóa thành một ma trận có kích thước 50x14 (Mỗi video có 50 frame).

Ta tiến hành xây dựng mô hình LSTM sử dụng thư viện: Tensorflow.

Số lượng hidenlayer : 32

window size (số lượng frame đưa vào mỗi lần để dự đoán đầu ra): 50.

learning rate : 0,005. Thuật toán tối ưu: Adam. batch size: 100.

Kết quả: khi test trên tập test thế võ công như hình 3.13

Hình 3.11 Sự lặp lại kiến trúc module trong mạng LSTM chứa 4 tầng ẩn (3 sigmoid

và 1 tanh) tương tác

Hình 3.12 Diễn giải các kí hiệu trong đồ thị mạng nơ ron

Kết quả cho thấy hiệu quả nhận dạng động tác tấn công khi chạy trên mạng nơ

ron LSTM có hiệu quả cao, nhất là khi số liệu tọa độ của các điểm đã được ước lượng

thì có hiệu quả cao hơn về độ chính xác phát hiện động tác.

3.4.2 Chấm điểm động tác võ cổ truyền Việt Nam

Trong công việc này, nghiên cứu áp dụng hệ thống chấm điểm động tác tĩnh của con người dựa trên khung xương của camera Kinect của tác giả Linwan Liu [93] để

thực hiện xây dựng chương trình chấm điểm động tác một bài Võ cổ truyền Việt Nam

bằng cảm biến Kinect của MS để lấy được các dữ liệu khung xương để tiến hành đối

chiếu với dữ liệu mẫu và tiến hành chấm điểm. Đóng góp chính của công việc này được

đưa ra dưới đây:

Thực hiện nhận dạng chấm điểm các động tác võ của một bài võ theo cơ sở dữ liệu mẫu 3-D cho trước.

Hình 3.13 Kết quả nhận dạng trên tập Test thế võ công.

Hình 3.14 Kết quả nhận dạng trên tập Test thế thủ.

cho chương trình thể dục giữa giờ được đưa vào chương trình học của các trường

phổ thông từ năm 2016.

Xây dựng chương trình phần mềm để người dùng có thể chọn độ khó của việc

chấm thông qua các thông số nhập vào.

Nghiên cứu đã thu thập 36 động tác được đưa ra bởi một võ sư đó là được cho là có cùng mức hiệu suất (Hình 3.15). Nghiên cứu thiết lập đầu vào của người dùng Dst = 50, Sst = 80, M = 35 và 36 bằng cử chỉ lớp (3.10).

Qua khảo sát thì các thế võ liên tục sẽ có thời gian dừng để chuyển qua thế khác,

tại vị trí dừng này tư thế sẽ được so sánh với mẫu và chấm điểm, như minh họa trong Hình 3.16.

Hình 3.17 cho thấy một số kết quả trong đó các động tác mà người biểu diễn quay

lưng lại với camera thì điểm số không cao như các động tác trực diện. Cũng như một

Hình 3.15 Lấy mẫu chuẩn.kể. kể.

Các hệ thống chấm điểm được phát triển trên nền tảng Visual Studio 2013 sử

dụng C . Người dùng sẽ được yêu cầu nhập các tham số trong hộp chỉnh sửa và chọn#

bộ dữ liệu võ tiêu chuẩn từ thư viện trước khi bắt đầu. Người dùng sẽ thực hiện công

việc hiệu chuẩn để sửa trước khi bắt đầu thực hiện các động tác tiếp theo. Các động

tác tiêu chuẩn sẽ lần lượt hiển thị trên màn hình dưới dạng hình ảnh của khung xương (Hình 3.18).

Các học viên sẽ thực hiện liên tục các động tác của mình và camera sẽ chụp và

so sánh các mẫu để xem nó có biểu diễn chính xác như trên màn hình hiển thị hay

không. Nếu các học viên quên động tác, họ có thể nhìn vào các mẫu trên màn hình để thực hiện cho đúng. Sau khi máy tính thu được dữ liệu của người biểu diễn dữ liệu từ

camera, nó sẽ so sánh và ghi điểm ngay lập tức, cứ sau mỗi điểm dừng nó sẽ đọc tới

hình ảnh tư thế tiếp theo trong bộ dữ liệu sau đó đưa ra hình ảnh tiếp theo trên màn

Hình 3.16 Các vị trí dừng để chấm điểm.

Hình 3.17 Thống kê trung bình điểm chấm 36 động tác võ cổ truyền Việt Nam. điểm của người biểu diễn (Hình 3.19).

Trong công việc này đã thực hiện áp dụng công thức chấm điểm động tác người

sử dụng camera Kinect [93] cho động tác võ cổ truyền Việt Nam, đã xây dựng cơ sở dữ

liệu mẫu 3-D của 36 động tác võ giữa giờ đang được đưa vào dạy tại các trường phổ

thông của Việt Nam và phần mềm chấm điểm động tác tĩnh. Đây là bước mở đầu của

việc thực hiện tự rèn luyện và đánh giá võ cổ truyền Việt Nam, góp phần cho việc bảo

tồn và phát triển tinh hoa dân tộc. Chương trình hứa hẹn có nhiều hướng mở rộng khi

có thể tích hợp kiểm tra đánh giá qua mạng sau này. Thống kê cho thấy chương trình

bước đầu đã đánh giá tương đối chính xác các động tác võ. Hệ thống làm việc hiệu

Hình 3.18 Giao diện chương trình chấm điểm.

3.5 Kết luận

Dựa vào kết quả đạt được, một mô hình nhận dạng tư thế người có rất nhiều ứng dụng như:

Hướng dẫn tập tập võ, yoga, vv. Các ứng dụng dạng này có thể chấm điểm, kiểm

tra các động tác có tập đúng hay không.

Một phần của tài liệu Về mô hình nhận dạng tư thế võ dựa trên ảnh chiều sâu758 (Trang 118)

Tải bản đầy đủ (PDF)

(148 trang)