Các bước để nhận dạng hành vi của một đối tượng trong khu vực quan sát: phát hiện đối tượng chuyển động, theo vết đối tượng và phân tích hành vi.. Mục tiêu của đề tài Đề tài thực hiện ha
TỔNG QUAN VỀ ĐỀ TÀI
Đặt vấn đề
Hệ thống giám sát đang dần trở thành nhu cầu thiết yếu của con người Các hệ thống giám sát thông minh không dừng lại ở những chức năng quan sát thông thường như các hệ thống giám sát truyền thống hiện nay, mà còn đảm nhiệm rất nhiều những tính năng cao cấp khác
Một trong những chức năng quan trọng là nhận dạng hành vi con người Nó đang là một hướng nghiên cứu mới và nhu cầu thực tế cao như: trong giám sát giao thông, nhà thông minh, … và đặc biệt trong lĩnh vực an ninh
Vì vậy, luận văn này sẽ tập trung nghiên cứu hiện thực đề tài: nhận dạng hành vi con người trong hệ thống giám sát thông minh.
Giới thiệu đề tài
Nhận dạng hành vi con người trong hệ thống giám sát thông minh
(Recognising human behaviours in intelligent surveillance system)
1.2.2 Mục tiêu của đề tài Đề tài thực hiện hai mục tiêu chính:
Khảo sát và đánh giá các kỹ thuật phát hiện đối tượng chuyển động, theo vết đối tượng và phân tích hành vi Tổng hợp các kết quả nghiên cứu nhằm tìm được phương pháp phù hợp với đề tài luận văn
Hiện thực chương trình và đánh giá kết quả đạt được trên các phương pháp đã nghiên cứu Luận văn cũng đề xuất hướng giải quyết cho các vấn đề liên quan hành vi bất thường thường gặp trong thực tế
1.2.3 Giới hạn của đề tài
Hành vi con người được xét dưới hai góc nhìn:
Góc nhìn tổng quát, hay góc nhìn trong môi trường rộng, khi đó con người được xét như một điểm trong không gian
Góc nhìn chi tiết, hay góc nhìn trong môi trường hẹp hơn, khi đó các bộ phận con người được xét tới để phân tích hành vi
Trong hệ thống giám sát thông minh, phân tích hành vi theo góc nhìn tổng quát là một chức năng rất quan trọng nên đề tài chỉ tập trung phân tích hành vi con người dựa vào vị trí đối tượng là chủ yếu
Hành vi con người chỉ có thể biết chính xác sau khi hành vi đó đã xảy ra Nên tính chính xác của dự đoán hành vi con người chỉ mang tính tương đối Vì vậy, không có thước đo tuyệt đối cho kết quả nhận dạng hành vi, mà chỉ có cách ước lượng tính chính xác của kết quả dựa vào lịch sử di chuyển của đối tượng
1.2.4 Ý nghĩa khoa học và thực tiễn
Hệ thống giám sát thông minh ngày càng phát triển do nhu cầu thực tế với các ứng dụng như: hệ thống camera cho nhà thông minh, ghi nhận các thông số giao thông, … Trong đó, nhận dạng hành vi con người là một hướng phát triển mới và quan trọng trong hệ thống giám sát thông minh Còn nhiều vấn đề cần được giải quyết trong việc phân tích hành vi con người Vì vậy, đề tài nghiên cứu hành vi con người trong hệ thống giám sát thông minh có ý nghĩa khoa học và thực tiễn như sau: Ý nghĩa khoa học:
Nghiên cứu hệ thống giám sát nói chung, mà cụ thể là nghiên cứu phân tích hành vi con người
Tổng hợp, đánh giá các công trình liên quan phân tích hành vi con người
Hiện thực nhận dạng hành vi dựa trên các công trình liên quan, bên cạnh đó đề xuất một số cải tiến trong việc phân tích hành vi con người Ý nghĩa thực tiễn:
Nhận dạng hành vi con người tự động làm giảm chi phí sử dụng nhân lực so với hệ thống giám sát truyền thống
Mô hình nhận dạng hành vi này có thể áp dụng vào nhiều ngành công nghiệp như: ô tô, điện thoại thông minh, nhà thông minh, …
Mô hình nhận dạng hành vi con người tự động sẽ hoạt động, phân tích liên tục nên phát hiện kịp thời các trường hợp bất thường như: cháy nhà, trộm cắp, phá hoại, tai nạn giao thông, …
1.2.5 Tóm lược kết quả đạt được
Kết quả chính luận văn đã đạt được:
Xây dựng khung phân tích hành vi gồm các bước từ phát hiện đối tượng chuyển động, theo vết đối tượng và phân tích hành vi
Xây dựng giải thuật tính xác suất hành vi và phát hiện hành vi bất thường.
Cấu trúc luận văn
Luận văn được tổ chức theo cấu trúc sau đây:
Chương 1: giới thiệu tổng quan về đề tài gồm: hoàn cảnh ra đời của đề tài, Mục tiêu của đề tài, ý nghĩa khoa học và thực tiễn của đề tài và các kết quả đạt được của luận văn
Chương 2: trình bày một số kiến thức nền tảng: tổng quan về hệ thống giám sát thông minh và những lý thuyết căn bản về mô hình Hidden Markov Model (HMM)
Chương 3: trình bày kết quả của các công trình nghiên cứu liên quan đến đề tài luận văn bao gồm: nhận dạng hành vi dựa trên quỹ đạo, nhận dạng hành vi dựa trên cử chỉ và các phương pháp nhận dạng hành vi khác
Chương 4: trình bày chi tiết hướng tiếp cận và cách hiện thực chương trình cho luận văn gồm: phát hiện đối tượng chuyển động, theo vết đối tượng và phân tích hành vi
Chương 5: đưa ra các kết quả đạt được, tiến hành đánh giá và so sánh kết quả
Chương 6: tổng kết và trình bày một số kết luận về ưu điểm, khuyết điểm cũng như hướng phát triển của luận văn
Cuối cùng là phần liệt kê các tài liệu tham khảo trong quá trình nghiên cứu và hiện thực của luận văn.
CƠ SỞ LÝ THUYẾT
Hệ thống giám sát thông minh
Trong các hệ thống giám sát truyền thống, con người theo dõi trực tiếp các hoạt động thông qua các camera giám sát, hoặc gián tiếp qua các video được lưu lại từ camera Hệ thống truyền thống gặp một số vấn đề như:
Khi số lượng camera tăng lên, đồng nghĩa với khung ảnh trên một màn hình tăng lên hoặc số lượng màn hình theo dõi tăng lên, để có thể kiểm soát được toàn bộ hệ thống qua số lượng lớn khung nhìn như thế cần rất nhiều nhân lực, dẫn đến chi phí tăng cao
Con người dễ mắc một số sai sót khi chỉ theo dõi khung cảnh trong một thời gian dài như: ngủ gật, mất tập trung, không bao quát hết khung cảnh khi có quá nhiều màn hình, …
Một số sự cố nghiêm trọng xảy ra như: hành động phá hoại, trộm cắp tài sản, tai nạn giao thông, ….Nhưng tại thời điểm đó không có nhân lực theo dõi trực tiếp, hệ thống giám sát truyền thống chỉ có thể lưu lại sự kiện dưới dạng video Mọi việc sau đó là giải quyết hậu quả
Hệ thống giám sát thông minh ngày càng được hoàn thiện để giải quyết các nhược điểm của hệ thống giám sát truyền thống Nó cung cấp một giải pháp an ninh hơn, dễ mở rộng với chi phí thấp hơn Hệ thống giám sát được xét đến trong luận văn được hiểu là hệ thống giám sát thông minh
Các khối chức năng chính trong một hệ thống giám sát [1] :
Mô hình nền (background modelling)
Phân loại đối tượng (object classification)
Theo vết đối tượng (object tracking)
Nhận dạng hành vi (behavior recognition)
Hình 2.1: Tổng quan về hệ thống giám sát [1]
2.1.1 Mô hình nền (Background Modelling)
Mô hình nền gồm phát hiện đối tượng và phân đoạn đối tượng Đối tượng được hiểu ngầm là đối tượng chuyển động Khối này nhận các frame video từ camera và tách các đối tượng chuyển động ra khỏi khung cảnh Đối tượng được tách gọi là “foreground” và khung cảnh còn lại gọi là “background” Các phương pháp thường được sử dụng: background subtraction, optical flow
Background subtraction: đây là phương pháp được sử dụng phổ biến vì tính đơn giản và hiệu quả
Trước hết phải ước lượng một khung cảnh nền, sau đó đối tượng sẽ được tách khỏi frame ảnh bằng cách lấy frame ảnh trừ cho khung cảnh nền Pixel thuộc đối tượng sẽ có hiệu số lớn hơn một ngưỡng xác định nào đó Ngưỡng này có thể xác định trước hoặc có thể thay đổi theo từng frame tùy vào từng phương pháp
Phương pháp đơn giản nhất để mô hình khung cảnh nền là sử dụng frame ảnh đầu tiên hay một frame ảnh bất kỳ làm khung cảnh nền Phương pháp này tuy đơn giản nhưng tính đáp ứng thấp (khung cảnh nền cập nhật chậm), vì vậy phương pháp này rất ít sử dụng trong thực tế Một phương pháp đơn giản khác có thể nhắc tới là
“frame differencing” Frame differencing xem frame ngay trước frame hiện hành hoặc cách frame hiện hành một vài frame là khung cảnh nền Ngược lại với phương pháp trên, tính đáp ứng của frame differencing rất cao Tuy nhiên đối tượng thu được thường bị thiếu thông tin Vì vậy tính hiệu quả của phương pháp này thấp Các phương pháp background subtraction hiệu quả hơn có thể nhắc tới như [2]: temporal median filter, running Gaussian average, mixture of Gaussians, kernel density estimators, eigenbackgrounds, sequential kernel density approximation, Kalman filter
Optical flow: phương pháp background subtraction được dùng phổ biến để tách một đối tượng chuyển động ra khỏi khung cảnh nền, tuy nhiên phương pháp này gặp một số khó khăn khi môi trường quan sát trở nên dày đặc các đối tượng chuyển động, đồng nghĩa với việc khung cảnh nền khó có thể được ước lượng Optical flow là một giải pháp cho vấn đề này, nó không phụ thuộc vào khung cảnh nền, thay vào đó nó là một tiếp cận hướng vector, ước lượng chuyển động trong frame video bằng cách so sánh các điểm tương ứng của đối tượng thông qua nhiều frame Tuy nhiên độ phức tạp tính toán cao và rất dễ bị nhiễu Một số kỹ thuật sử dụng optical flow có thể xét đến như phương pháp của Lucas và Kanade, Black và Anandan
2.1.2 Phân loại đối tượng (Object Classification)
Sau khi phát hiện và phân đoạn đối tượng chuyển động, bước tiếp theo trong hệ thống giám sát là phân loại đối tượng Đối tượng chuyển động có thể là người, vật hay một loại đối tượng nào khác Giả sử hệ thống giám sát chỉ quan tâm đến đối tượng chuyển động là con người, thì các đối tượng không phải là con người sẽ được hệ thống bỏ qua Làm sao hệ thống có thể biết được đối tượng chuyển động đó có phải là con người hay không? Phân loại đối tượng giúp hệ thống trả lời câu hỏi trên Hầu hết các cách tiếp cận đều thực hiện theo hai bước: rút trích các đặc trưng và phân loại các vector đặc trưng
Rút trích các đặc trưng: các đặc trưng cần rút trích của đối tượng có thể theo các hướng sau:
Đặc trưng dựa vào hình dạng (shape-based): các đặc trưng dựa vào hình dạng thường liên quan đến các đặc điểm hình học của đối tượng như: các điểm, các đường bao, bóng và các “blob” Nhìn chung, các phương pháp phân loại dựa vào hình dạng so sánh thuộc tính đối tượng chuyển động với thuộc tính của một tập đối tượng tĩnh đã biết trước Mục đích là tìm ra đối tượng nào trong tập tĩnh gần giống nhất so với đối tượng cần phân loại Phân loại đối tượng dựa vào hình dạng chỉ có thể làm việc hiệu quả khi các đặc trưng được quan sát toàn diện, nghĩa là không bị che khuất
Đặc trưng dựa vào chuyển động (motion-based): các phương pháp phân loại dựa trên đặc trưng chuyển động lấy ý tưởng: các đặc tính chuyển động đối tượng đủ để phân biệt các loại đối tượng khác nhau Ví dụ quỹ đạo chuyển động của một người đi bộ sẽ khác với quỹ đạo chuyển động của một chiếc xe máy
Các loại đặc trưng khác: đặc trưng thường gặp trong mảng này là màu sắc bề mặt Phân loại dựa theo màu sắc hoạt động tốt bất chấp sự thay đổi ánh sáng, góc nhìn, co giãn, độ bóng và bị che khuất Tuy nhiên khi các đối tượng có màu sắc gần giống nhau thì việc phân loại gặp rất nhiều khó khăn Ngoài ra, các đặc trưng có thể kết hợp với nhau để tạo các đặc trưng mới giúp việc phân loại có các kết quả tốt hơn
Phân loại các vector đặc trưng: sau khi rút trích được các đặc trưng, bước tiếp theo là sử dụng các đặc trưng để phân loại đối tượng Các phương pháp phổ biến phân loại các vector đặc trưng: neural network, hidden Markov model (HMM), support vector machine (SVM)
2.1.3 Theo vết đối tượng (Object Tracking)
Hidden Markov Model
Chuỗi Markov là một dãy S 1 , S 2 , S 3 , các biến ngẫu nhiên Tập tất cả các giá trị có thể có của các biến này được gọi là không gian trạng thái S Gọi trạng thái ở thời điểm t là q t
Tính chất Markov: việc xác định phân bố xác suất có điều kiện của q t khi cho biết các trạng thái quá khứ là một hàm chỉ phụ thuộc q t-1
P[q t = S j | q t-1 = S i , q t-2 = S k , …] = P[q t = S j | q t-1 = S i ] (2.1) Ngoài ra, với a ij = P[q t = S j | q t-1 = S i ], 1 ≤ i, j ≤ N (N là số trạng thái) gọi là xác suất chuyển trạng thái Ta có: a ij ≥ 0
Xét một ví dụ về chuỗi Markov 3 trạng thái như hình sau:
Hình 2.3: Chuỗi markov 3 trạng thái
Ma trận chuyển trạng thái A có thể được biểu diễn như sau:
Xét một chuỗi quan sát O = {S 3 , S 3 , S 3 , S 1 , S 1 , S 3 , S 2 , S 3 } tương ứng với t = 1, 2,
…,8 Xác suất để chuỗi quan sát xảy ra khi biết mô hình chuỗi Markov ở trên được tính như sau:
Với chuỗi Markov được mô hình như trên, mỗi trạng thái sẽ tương ứng với một sự kiện thực tế quan sát được Vì vậy mô hình này quá giới hạn để có thể giải quyết các bài toán phức tạp, ví dụ các bài toán có các trạng thái không quan sát được (bị ẩn) nhưng nó có thể suy diễn được từ mô hình xác suất của các trạng thái quan sát được khác Phần tiếp theo sẽ giới thiệu về một mô hình mở rộng của chuỗi Markov gọi là Hidden Markov Model (HMM) để giải quyết bài toán có chứa trạng thái ẩn mà chuỗi markov không giải quyết được
Các thành phần của HMM:
N: số trạng thái của HMM
q t : trạng thái tại thời gian t
M: số các ký hiệu quan sát rời rạc trên một trạng thái
V = {v 1 , v 2 , …, v M }: tập các ký hiệu quan sát
A = {a ij }: ma trận xác suất chuyển từ trạng thái này sang trạng thái khác
a ij = P[q t+1 = S j | q t = S i ], 1 ≤ i, j ≤ N: xác suất chuyển từ trạng thái S i sang S j và: a ij ≥0
B = {b jk }: ma trận xác suất chuyển từ trạng thái sang ký hiệu quan sát
b jk = P[v k tại t | q t = S j ], 1 ≤ j ≤ N và 1 ≤ k ≤ M: xác suất chuyển từ trạng thái
S j sang ký hiệu quan sát v k tại thời điểm t
π = {π i }: vector xác suất trạng thái khởi đầu
π i = p[q 1 = S i ], 1 ≤ i ≤ N: xác suất trạng thái khởi đầu
Tập hợp tất cả các thành phần trên tạo thành mô hình HMM được ký hiệu: λ = (A, B, ) Để làm rõ vấn đề ta xét một số ví dụ như sau:
Giả sử tôi có một người bạn sống ở rất xa Hằng ngày chúng tôi gọi điện cho nhau và anh ta kể cho tôi nghe anh ta đã làm gì trong ngày Người bạn tôi chỉ có ba công việc mà anh thích làm là: đi dạo, đi chợ và dọn phòng Hiển nhiên là sự lựa chọn phải làm gì thì phụ thuộc trực tiếp vào thời tiết hôm đó thế nào Như vậy, tôi không nhận được thông tin cụ thể về thời tiết nơi anh bạn tôi sống nhưng tôi lại biết về xu hướng chung Dựa vào lời kể của công việc hàng ngày của anh ta, tôi có thể đoán về thời tiết hôm đó
Như vậy, thời tiết được vận hành như một chuỗi markov Cụ thể có 2 trạng thái thời tiết, "Mưa" và "Nắng", nhưng tôi không quan sát trực tiếp, do đó, chúng là ẩn đối với tôi Vào mỗi ngày, anh bạn tôi sẽ làm một trong các việc sau phụ thuộc vào thời tiết hôm đó là "đi dạo", "đi chợ" hay "dọn phòng" Vì bạn tôi đã tường thuật lại hoạt động của mình, nên những dữ liệu đó tôi có thể biết được vì vậy có thể coi đó là các dữ liệu quan sát Toàn bộ hệ thống này là một mô hình HMM
Hình 2.4: Một ví dụ mô hình HMM
V = {đi dạo, dọn phòng, đi chợ}
Giá trị xác suất ban đầu π = {0.6, 0.4}
Ba vấn đề cơ bản của HMM: Ước lượng (Evaluation): cho một chuỗi quan sát O = O 1 O 2 …O T và một mô hình λ = (A, B, π) Làm thế nào để tính toán một cách hiệu quả xác suất một chuỗi quan sát khi biết trước mô hình: P(O|λ)?
Từ những kết quả trên, giải thuật giải quyết vấn đề 1 như sau:
Giải thuật có thể biểu diễn trực quan như Hình 2.5
Hình 2.5: Cách tính α t+1 (j) từ α t (i) (hình trên) Cách tính mỗi phần tử α t (i) của lưới hai chiều là chuỗi quan sát theo thời gian t và trang thái i (hình dưới) [13]
Giải mã (Decoding): cho một chuỗi quan sát O = O 1 O 2 …O T và một mô hình λ
= (A, B, π) Làm thế nào để chọn một chuỗi trạng thái tương ứng Q = q 1 q 2 …q T mà đáp ứng tốt nhất với chuỗi quan sát hay P(Q|O, λ) là lớn nhất
Vấn đề 1(ước lượng) cho ra một kết quả duy nhất, tuy nhiên ở vấn đề 2 này nếu chỉ cần tìm chuỗi tương ứng Q = q 1 q 2 …q T thì kết quả không phải là duy nhất Mỗi chuỗi trạng thái tương ứng với chuỗi quan sát là một lời giải Với chuỗi quan sát O ở trên ta sẽ có tương ứng N T lời giải Mỗi một lời giải sẽ cho một giá trị xác suất P(Q|O, λ), và lời giải duy nhất ở đây sẽ là chuỗi trạng thái mà làm cho P(Q|O,λ) có giá trị lớn nhất
Với kết quả trên cho thấy một cách tìm chuỗi trạng thái, đó là tìm từng trạng thái với xác xuất lớn nhất Sau T lần, kết quả sẽ là chuỗi trạng thái cần tìm
Tuy nhiên với cách tính như trên có một số nhược điểm: nếu giữa hai trạng thái tìm được bằng cách trên có xác xuất chuyển trạng thái bằng 0 (aij = 0) thì chuỗi tìm được sẽ không hợp lệ Nguyên nhân dẫn đến lỗ hổng đó là do cách trên tìm kiếm từng trạng thái riêng lẻ Để khắc phục tình trạng này, thay vì tìm kiếm riêng lẻ từng trạng thái, ta tìm kiếm từng cặp trạng thái một Giải thuật Viterbi giải quyết theo hướng này
Gọi ψ t (j) là mảng một chiều dùng để lưu chuỗi tìm được cho tới thời điểm t
Cách hiện thực giải thuật Viterbi gần giống với cách hiện thực α t (i), điểm khác biệt là α t (i) tìm tất cả dữ liệu tồng hợp của các trạng thái, còn Viterbi tìm dữ liệu lớn nhất trong các trạng thái
Máy học (learning): cho chuỗi quan sát O, điều chỉnh các thông số trong mô hình λ = (A, B, π) để P(O|λ) là lớn nhất Đây là vấn đề khó nhất trong ba vấn đề cơ bản của HMM Thực tế, cho bất kỳ một tập quan sát hữu hạn như là dữ liệu huấn luyện, không có cách tối ưu để ước lượng các thông số của mô hình Phần này sẽ sử dụng phương pháp của Baum- Welch để ước lượng các thông số theo hướng làm cho giá trị P(O|λ) lớn nhất cục bộ
∑ ( ) : tổng số xác suất chuyển trạng thái từ S i dựa trên chuỗi O
∑ ( , ) : tổng số xác suất chuyển trạng thái từ S i tới S j dựa trên chuỗi O Tóm lại các thông số của HMM sẽ được cập nhật như sau:
∑ ( ) (2.9) Điều quan trọng nhất của việc huấn luyện các thông số của mô hình HMM là sau khi áp dụng các phương pháp để điều chỉnh các thông số phải đảm bảo:
Tiêu chí nhận dạng hành vi con người
Hành vi con người chỉ có thể biết được khi đối tượng đã thực hiện xong hành vi Trước khi hành vi được thực hiện thì chỉ có đối tượng đó mới biết mình sắp thực hiện hành vi gì Nên, dự đoán chính xác tuyệt đối hành vi của con người là một việc làm không khả thi Chính vì vậy, luận văn thực hiện các dự đoán hành vi con người chính xác ở mức tương đối Đối với xác suất thực hiện hành vi: công cụ nhận dạng hành vi được huấn luyện trên một tập video cho từng loại hành vi Đối tượng di chuyển trong khu vực quan sát sẽ được dự đoán hành vi qua từng frame Tính chính xác của kết quả dự đoán được đánh giá căn cứ vào lịch sử di chuyển hay quỹ đạo chuyển động của đối tượng và hoàn cảnh thực tế cụ thể Đối với phát hiện hành vi bất thường: tính chính xác của kết quả được so sánh với sự thật quan sát ngoài thực tế Một tập video có các hành vi bất thường được biết trước ngoài thực tế sẽ làm dữ liệu huấn luyện, và một tập video có các hành vi tương tự trong tập mẫu được sử dụng để kiểm tra tính chính xác Nếu giải thuật cho kết quả phát hiện bất thường giống với thực tế thì giải thuật chính xác và ngược lại Mức độ chính xác của giải thuật được tính là số lượng hành vi được phát hiện chính xác trên tổng số lượng hành vi kiểm tra.
CÁC KẾT QUẢ NGHIÊN CỨU LIÊN QUAN
Nhận dạng hành vi dựa trên quỹ đạo
Con người có kích thước nhỏ khi di chuyển trong một khu vực rộng lớn Chính vì kích thước nhỏ nên những nghiên cứu theo hướng này chỉ quan tâm tới vị trí của con người trong không gian, hay nói cách khác con người được xem là một điểm trong không gian và hành vi con người tương ứng với chuỗi chuyển động từ vị trí này sang vị trí khác
Nguyen et al [10, 11] xây dựng một tập các luật (policy) tương ứng với các vị trí trong khu vực thí nghiệm Một đối tượng tiến vào khu vực quan sát sẽ được xác định xác suất hành vi tương ứng với luật nào cho trước dựa vào chuỗi các chuyển động Ví dụ một người chuyển động trong khu vực thí nghiệm như Hình 3.1: Đối tượng đi vào khung cảnh từ lối vào trái (left entrance), di chuyển vào phòng thí nghiệm (vision lab), sau đó di chuyển qua các vị trí trong phòng và ra khỏi khung cảnh qua lối vào trái Với p left_e là xác suất người đó rời khung cảnh qua lối vào bên trái và p right_e là xác suất người đó rời khung cảnh qua lối vào bên phải thì Hình 3.2 cho thấy biểu đồ xác suất người đó ra khỏi khung cảnh qua các lối vào Lúc đầu, p left_e giảm vì người đó đang di chuyển xa dần lối vào bên trái Sau đó, p left_e không thay đổi từ thời điểm 30 khi đối tượng di chuyển vào phòng thí nghiệm Và sau cùng, p left_e sẽ tăng lên 1 khi đối tượng ra khỏi khung cảnh qua lối vào bên trái Zhang et al [12] không định nghĩa trước các vị trí trong khu vực thí nghiệm hay các policy tương ứng, mà các vị trí cần quan tâm trong môi trường hay các điểm đánh dấu (marked-points) được tìm thấy bằng phương pháp ánh xạ môi trường kết hợp với giải thuật gom cụm FCM (fuzzy C-means) Tâm của mỗi cụm là vị trí cần quan tâm trong môi trường Vì vậy mô hình này không phụ thuộc vào cấu trúc môi trường
Hình 3.1: Môi trường và quỹ đạo chuyển động của một người [10]
Hình 3.2: Xác suất đối tượng rời khỏi khung cảnh qua các lối vào [10]
Ouivirach et al [14], Antonakaki et al [17] phát triển phương pháp nhận diện hành vi bất thường trong chuỗi chuyển động Phương pháp này sử dụng HMM để mô hình chuỗi chuyển động Mô hình HMM sẽ được huấn luyện dựa trên tập các chuyển động được xem là bình thường Một hành vi là bất thường nếu:
O normal : chuỗi quan sát chuyển động bình thường
O abnormal : chuỗi quan sát chuyển động bất thường λ: mô hình HMM log P(O abnormal | λ), log P(O normal | λ): được tính như trong [13]
Nói cách khác, một chuỗi chuyển động quan sát được là bất thường nếu xác suất cơ may cực đại chuỗi quan sát trên chiều dài chuỗi nhỏ hơn một ngưỡng xác định Một ví dụ hành vi bình thường và bất thường minh họa trong Hình 3.3 Trong ví dụ này tập quỹ đạo bình thường (màu đen) được đưa ra để huấn luyện các thông số HMM và quỹ đạo bất thường (màu đỏ) được sử dụng để kiểm tra kết quả
Hình 3.3: Hành vi bình thường và hành vi bất thường [17]
Nhận dạng hành vi dựa vào cử chỉ
Nhận dạng hành vi dựa vào quỹ đạo nhận dạng đối tượng ở mức tổng quan, xem đối tượng là một vị trí trong không gian Nhận dạng hành vi dựa vào cử chỉ quan tâm đối tượng ở mức chi tiết hơn, các chuyển động của tay, chân, đầu, thân, … đều được sử dụng để nhận dạng các hành vi khác nhau như: chạy, nhảy, đi bộ, đánh nhau, bắt tay nhau, …
Park et al [15] sử dụng DFA (deterministic finite state automata) phân cấp để theo dõi chuyển động cơ thể và nhận diện tương tác của con người thông qua chuỗi video DFA phân cấp trừu tượng hóa các trạng thái và các sự kiện từ các dự liệu cử động thành ba mức:
Mức thấp: chỉ phân tích các thành phần thân thể người
Mức trung: phân tích các cử động
Mức cao: phân tích tương tác người với người
Một DFA mức thấp biểu diễn cho một bộ phận của cơ thể, có ba bộ phận cơ thể được quan tâm: tâm cơ thể, chân và tay Vì vậy sẽ có ba DFA tách biệt biểu diễn cho ba bộ phận này (Hình 3.4) DFA biểu diễn di chuyển chân gồm các trạng thái (không tính trạng thái bắt đầu): G2 đồng nghĩa cả hai chân đang ở mặt đất, A2 đồng nghĩa cả hai chân đang trên không trung, G1A1 đồng nghĩa với một chân ở mặt đất và một chân trên không trung, G1HA1 đồng nghĩa với một chân ở mặt đất và một chân ở rất cao trên không trung và G, A, E, H là các sự kiện chuyển trạng thái (Hình 3.4a) Tương tự, Hình 3.4b là DFA biểu diễn cho di chuyển tâm cơ thể người gồm ba trạng thái là: không chuyển động (stationary), di chuyển về phía trước (move forward), di chuyển về phía sau (move backward) và các sự kiện chuyển trạng thái:
S, B, F Hình 3.4c là DFA biểu diễn cho chuyển động tay gồm ba trạng thái: ít nhất một tay đưa lên (up), cả hai tay bỏ xuống (down), ít nhất một tay liên lạc với người khác (contact) và các sự kiện chuyển trạng thái: U, C, D
Hình 3.4: Ba DFA mức thấp biểu diễn cho ba phần: chân, tâm cơ thể, tay [15] Một DFA mức trung sử dụng sự thay đổi của DFA mức thấp làm đầu vào để nhận dạng cử động cơ thể của một người Hình 3.5(a,b) minh họa cho DFA mức trung cho hành động đi bộ và chạy, kí tự * đồng nghĩa bất kỳ đầu vào nào cũng được Mỗi một DFA được sử dụng để nhận dạng một chuyển động nào đó Kết quả từ DFA mức trung là biểu diễn chuyển động ở mức cao như : đi bộ, chạy, đá, … Và được dùng làm đầu vào cho DFA mức cao
Hình 3.5: DFA mức trung (a, b) để nhận dạng cử động của một người và DFA mức cao (c) để nhận dạng tương tác cử động giữa hai người [15]
Một DFA mức cao được sử dụng để nhận dạng tương tác giữa hai người Hình 3.5c minh họa cho DFA mức cao cho tương tác người này đẩy người kia (pushing): ví dụ người bên trái đẩy người bên phải thì trình tự sẽ diễn ra như sau: người bên trái sẽ tiến tới liên lạc với người bên phải (left in contact), sau đó người bên phải sẽ di chuyển lùi ra phía sau Biểu diễn trường hợp này là nhánh trên của Hình 3.5c Mỗi một tương tác sẽ có một DFA mức cao tương ứng Vì vậy, tùy theo các tương tác cần trong ứng dụng thì sẽ có bấy nhiêu DFA mức cao
Sugimoto et al [16] sử dụng văn phạm phi ngữ cảnh để biểu diễn các hoạt động của con người Hệ thống đề nghị bao gồm ba bước chính:
Sử dụng một camera để phát hiện đối tượng chuyển động
Nhận diện hành động của đối tượng chuyển động như: chạy, đi bộ, …
Một bộ phân loại dựa theo luật (rule-based) được dùng để phân loại các hoạt động
Sử dụng văn phạm phi ngữ cảnh đã biểu diễn tốt nhiều loại hoạt động con người khác nhau Tuy nhiên cách tiếp cận này chưa thể bao quát hết các vấn đề phát sinh trong ngữ cảnh phân tích hành vi Vì vậy để có kết quả tốt hơn có thể kết hợp với các phương pháp khác như support vector machine hay hidden Markov model.
Các phương pháp nhận dạng hành vi khác
Để tăng tính chính xác trong nhận dạng hành vi, thay vì chỉ sử dụng riêng lẻ quỹ đạo chuyển động hay cử chỉ, một số phương pháp đã kết hợp cả quỹ đạo và cử chỉ để nhận dạng hành vi Antonakaki et al [17] phân loại hành vi thành hai nhóm: hành vi ngắn hạn và hành vi dài hạn Các hành vi ngắn hạn là các hành vi xảy ra trong một thời gian ngắn ở vùng không gian giới hạn được phân loại nhờ SVM một lớp Các hành vi dài hạn là các quỹ đạo chuyển động của đối tượng được phân loại bằng mô hình cHMM (continuous Hidden Markov Model) Mô hình phân loại hành vi được biểu diễn như Hình 3.6
Hình 3.6: Kết hợp nhận dạng hành vi ngắn hạn và hành vi dài hạn [17]
Thay vì nhận biết quỹ đạo chuyển động và cử chỉ tách biệt nhau, Lao et al [18] kết hợp quỹ đạo chuyển động và cử chỉ để nhận diện một hành vi cụ thể như: cướp ngân hàng Mô hình được biểu diễn như Hình 3.7
Hình 3.7: Biểu đồ khối phân tích hành vi con người [18]
Hầu hết các phương pháp đã trình ở trên đều phải phải thực hiện bước theo vết đối tượng Tuy nhiên, Jodoin et al [19] nhận thấy nhận dạng hành vi phụ thuộc rất lớn vào phát hiện đối tượng chuyển động và độ chính xác theo vết đối tượng Đặc biệt là độ phức tạp tính toán cao nên khó đáp ứng thực thi thời gian thực Vì vậy, Pierre-Marc Jodoin đề xuất nhận dạng hành vi bất thường không sử dụng theo vết đối tượng Phương pháp này gom nội dung động của một chuỗi video thành cấu trúc mức thấp ở phần huấn luyện Cấu trúc này được gọi là ảnh hành vi (behavior image), ảnh hành vi này biểu cho các quỹ đạo bình thường hay các hành vi bình thường Sau đó ảnh hành vi quan sát được xây dựng trong khung chuyển động gồm một số frame Ảnh hành vi quan sát được trừ cho ảnh hành vi, nếu pixel nào có hiệu giá trị vượt một ngưỡng thì pixel đó thuộc hành vi bất thường và ngược lại Phương pháp này cho thấy những ưu điểm vượt trội như: không cần theo vết đối tượng, độ phức tạp tính toán thấp và khả năng phát hiện các bất thường cao Tuy nhiên các hành vi được phát hiện ở đây mang tính quy luật, rất khó áp dụng cho ngữ cảnh môi trường phức tạp.
Tổng kết các nghiên cứu liên quan
Lĩnh vực phân tích hành vi phát triển mạnh mẽ trong những năm gần đây và nhận được nhiều sự quan tâm vì tính ứng dụng cao của nó Vì vậy, có khá nhiều nghiên cứu đã và đang được thực hiện gần đây Các nghiên cứu cho thấy kết quả tốt trong việc nhận biết xác suất hành vi cũng như phát hiện các hành vi bất thường Nghiên cứu hành vi là một lĩnh vực rộng lớn, vì vậy còn rất nhiều hướng mở rộng cho nghiên cứu cũng như áp dụng trong thực tế Dựa vào việc tìm hiểu các nghiên cứu liên quan, việc hiện thực và mở rộng phân tích hành vi con người của đề tài này là khả thi.
HƯỚNG TIẾP CẬN VÀ HIỆN THỰC
Mô hình tổng quan
Luận văn tập trung phân tích hành vi con người, mà cụ thể phân tích quỹ đạo chuyển động của đối tượng Tuy nhiên để có dữ liệu quỹ đạo cần hiện thực các bước cơ bản của hệ thống giám sát: phát hiện đối tượng chuyển động và theo vết đối tượng
Luận văn này tập trung phân tích hành vi con người dựa vào quỹ đạo Dữ liệu để phân tích hành vi con người là các video được thu thập từ camera Tuy nhiên:
Các tập dữ liệu chuẩn hiện nay như: YouTube, CAVIAR, PETS, SPEVI, chủ yếu hỗ trợ các dữ liệu để theo vết đối tượng, hoặc các dữ liệu liên quan đến hoạt động chi tiết cơ thể người (chạy, nhảy, đi lại, )
Các công trình liên quan đến đề tài không công bố tập dữ liệu
Vì vậy, đề tài không thể sử dụng các tập dữ liệu chuẩn có sẵn, hoặc dữ liệu của các công trình trước đó để so sánh kết quả Thay vào đó, dữ liệu được thu thập dưới dạng video quay bằng một camera Video được xử lý như mô hình ở Hình 4.1
Hình 4.1: Mô hình tổng quan Đối tượng chuyển động được phát hiện bằng phương pháp background subtraction, kết quả thu được là ảnh nhị phân với các pixel thuộc về foreground có giá trị 255, các pixel thuộc background có giá trị 0 Các pixel kế cận nhau thuộc foreground được liên kết với nhau tạo thành các blob Mỗi blob sau khi đã tinh lọc sẽ tương ứng với một đối tượng đơn hoặc một đối tượng phức hợp gồm nhiều đối tượng đơn che khuất lẫn nhau
Các đối tượng sau khi được xác định cần được theo vết qua các frame Các đối tượng di chuyển trong không gian có thể độc lập với các đối tượng khác hoặc che lấp nhau, khi đó ta nói chúng gộp chung nhau tạo thành nhóm Nhóm được xem là một đối tượng mới tách biệt và cũng cần theo vết Khi các thành phần của nhóm tách rời nhau thành từng đối tượng, đối tượng này cần nhận diện là đối tượng trước khi sát nhập nhóm chứ không phải là một đối tượng mới hoàn toàn
Do điều kiện hạn chế, dữ liệu luận văn được quay thực tế trong khung cảnh trước sân khoa xây dựng trường đại học Bách Khoa thành phố Hồ Chí Minh Để thấy rõ được tính ứng dụng của đề tài, khung cảnh này được ánh xạ vào một mô hình giả lập một khu dân cư với những vị trí then chốt: nhà dân, cửa hàng điện thoại, tiệm tạp hóa, ngân hàng, quán cafe, bồn hoa, máy ATM, siêu thị, lối vào 1 và lối vào 2
Hành vi con người là một chuỗi các hành động theo thời gian Hành động là những hoạt động có mục đích cụ thể, phương tiện cụ thể tại một địa điểm cụ thể Như vậy, đơn vị cơ sở của hành vi là hành động và do đó hành vi của con người có tính chất hướng đích [20] Hành động được quan tâm trong môi trường này là vị trí di chuyển của đối tượng, và hành vi tương ứng là quỹ đạo chuyển động trong không gian Một đối tượng bình thường di chuyển trong khu dân cư sẽ hướng tới một địa điểm nào đó để thực hiện một dự định nào đó như: tiếp cận nhà dân, đi mua điện thoại tại cửa hàng điện thoại, mua đồ ở tiệm tạp hóa, giao dịch ngân hàng, đi uống cafe, rút tiền tại trạm ATM, mua sắm ở siêu thị, hay đơn giản là đi ngang qua khu dân cư qua lối vào 1 và lối vào 2
Trong trường hợp ngân hàng hoặc cửa hàng điện thoại không làm việc, mọi hành vi dự định giao dịch ngân hàng hoặc mua điện thoại đều cần được quan tâm đặc biệt Vì vậy đề tài hiện thực nhận biết xác suất hành vi của đối tượng Xác suất càng lớn thì hành vi của người đó càng rõ ràng Mặt khác, khi một đối tượng tiến vào khu dân cư, di chuyển không rõ mục đích (đi lòng vòng, đi qua đi lại, …), hay di chuyển qua một khu vực không cho phép thì cần phát hiện là một hành vi bất thường (trộm cắp tài sản, phá hoại, …) và cần được quan tâm theo dõi đặc biệt Chi tiết kỹ thuật phát hiện đối tượng chuyển động, theo vết đối tượng và nhận dạng hành vi sẽ được trình bày chi tiết ở phần tiếp theo.
Phát hiện đối tượng chuyển động
Đối tượng chuyển động được phát hiện bằng phương pháp Eigenbackground Subtraction của Oliver et al [21], một phương pháp trong nhóm phương pháp background subtraction Để phát hiện đối tượng chuyển động, một không gian riêng (eigenspace) được xây dựng để mô hình khung cảnh nền Mô hình không gian riêng này mô tả phạm vi, đặc tính môi trường quan sát được (ví dụ: sự thay đổi ánh sáng trong ngày, hay sự thay đổi thời tiết, …)
Mô hình không gian riêng được tạo ra bằng cách lấy N ảnh mẫu, tính ảnh nền trung bình μ b và ma trận hiệp phương sai C b Ma trân hiệp phương sai này có thể được chéo hóa thông qua phân tích giá trị riêng L b = Ф b C b Ф b T
Ф b là ma trận vector riêng (eigenvector) của hiệp phương sai của dữ liệu
L b là ma trận đường chéo tương ứng với các giá trị riêng của nó
PCA được sử dụng để giảm số chiều từ N xuống M M giá trị riêng lớn nhất này sẽ có ma trận vector riêng tương ứng Ф M Vector đặc trưng thành phần chính được tính theo công thức: I i – Ф X i , trong đó X i = I i – μ b là trung bình vector ảnh đã được chuẩn hóa, I i là giá trị của pixel ảnh đầu vào Đối tượng chuyển động thường không ở cùng một vị trí trong N frame mẫu Vì vậy, mức độ đóng góp của các pixel thuộc đối tượng vào khung cảnh nền không đáng kể Nên các pixel thuộc background được biểu diễn như là tổng của các vector riêng cơ bản (eigenbasis) khác nhau
Các ảnh eigenbackground được lưu trong Ф , và giá trị trung bình của chúng được lưu trong μ b Khi đó một pixel thuộc ảnh nền được tính: B i = Ф X i Thực hiện phép trừ nền lần lượt cho từng pixel Pixel thứ i thuộc đối tượng nếu |I i – B i | lớn hơn một ngưỡng xác định nào đó Các pixel thuộc đối tượng chuyển động sẽ được gom nhóm tạo thành các blob Các blob này sẽ được sử dụng để xử lý cho các bước tiếp theo.
Theo vết đối tượng
Theo vết đối tượng trong luận văn sử dụng phương pháp matching blobs [23, 24] để xác định các đối tượng qua các frame Mục 4.3.1 trình bày phương pháp matching blobs theo vết một đối tượng trong môi trường có nhiều đối tượng Mục 4.3.2 theo vết nhiều đối tượng bằng cách kết hợp giải thuật trong mục 4.3.1 cho từng đối tượng riêng lẻ kết hợp với việc quản lý sự tương tác các đối tượng trong khung cảnh
4.3.1 Theo vết một đối tượng
Phương pháp matching blobs trong luận văn được tham khảo chủ yếu ở bài báo của Ali et al [23] và Michael H Fischer, Jiyan Pan [3] Matching blobs chủ yếu sử dụng đặc tính về: kích thước, mức xám của từng pixel trong blob, ba thành phần màu RGB cho từng pixel, hoặc tọa độ tâm của blob Ngoài ra, hướng di chuyển của blob cũng là một tính chất quan trọng trong việc xác định đối tượng ở các frame Vì vậy, phần này sẽ hiện thực một hàm lượng giá kết hợp thông số của matching blobs và hướng các blob để ước lượng mức độ tương ứng của một blob ở frame t so với các blob ở frame thứ t+1
Nhận định rằng một đối tượng chỉ có thể di chuyển với một vận tốc thay đổi nhỏ hơn một ngưỡng nào đó Nên đối tượng chỉ có thể nằm trong một vùng có bán kính là r so với vị trị của nó ở frame trước đó
O t O t+1 = ( − ) + ( − ) ≤ r (4.1) Trong đó: O t (x t , y t ) và O t+1 (x t+1 , y t+1 ) lần lượt là tâm blob của đối tượng tại frame thứ t và t+1 Để tìm blob tương ứng ở frame t+1 ta chỉ cần tính hàm lượng giá cho các blob nằm trong vùng có bán kính r Nhờ đó giảm được sai số và công sức tính toán
Matching blobs: Để so trùng các blob, luận văn sử dụng độ tượng quan vùng ảnh (correlation) giữa hai blob Công thức được tính:
S(i, j) là giá trị mức xám của pixel ở hàng thứ i và cột thứ j của blob S
T(i, j) là giá trị mức xám của pixel ở hàng thứ i và cột thứ j của blob T
M, N lần lượt là số hàng và số cột của blob
Blob của đối tượng đang theo vết ở frame t sẽ được so trùng với các blob trong khu vực di chuyển ở frame thứ t+1 Chuẩn hóa độ tương quan vùng ảnh:
N: số blob trong vùng di chuyển có bán kính r
Co i là độ tương quan của blob ở frame thứ t so với blob thứ i ở frame t+1 Hướng di chuyển của blob:
Tâm của blob thứ i ở frame t+1 trong vùng di chuyển sẽ hợp với vị trí trước đó của đối tượng ở frame t một góc α i Góc α i được tính như sau: α i = ∗ ∗ , 0 ≤ α i ≤ π (4.4) với:
(pre x , pre y ): vector vận tốc của đối tượng ở frame t
(cur x , cur y ): vector hướng từ tâm đối tượng tới tâm của blob thứ i ở frame t+1
= ∑ (4.5) với N: số blob trong vùng di chuyển
Blob đối tượng ở frame t có mối tương quan với blob thứ i trong frame t+1 trong vùng di chuyển thông qua hàm lượng giá được tính như sau: f i = β + (1 - β) (4.6) trong đó: β là một trọng số ∈ [0, 1], xác định dựa trên thực nghiệm Nếu β lớn hơn 0.5 thì blob matching là nhân tố chính trong ánh xạ các blob và ngược lại thì hướng của đối tượng sẽ là nhân tố chính để so sánh
Khi đó blob thứ j trong frame t+1 sẽ là đối tượng đang theo vết
4.3.2 Theo vết nhiều đối tượng
Các vấn đề cần giải quyết khi theo vết nhiều đối tượng:
Thêm đối tượng: đối tượng mới xuất hiện trong khu vực giám sát sẽ được thêm thông tin trạng thái và bắt đầu được theo vết
Loại bỏ đối tượng: các đối tượng đang được theo vết di chuyển ra khỏi khu vực quan sát sẽ được lưu lại trạng thái và tạm dừng theo vết
Sự tương ứng: một đối tượng đơn đang được theo vết sẽ tương ứng với blob nào trong frame hiện hành
Hợp nhất: nhiều đối tượng che khuất nhau, hợp lại thành một đối tượng
Tách rời: các đối tượng sát nhập với nhau ở các frame trước, đến frame hiện tại chúng tách rời nhau
Thêm đối tượng: Đối tượng mới xuất hiện trong khung cảnh thông qua các lối vào: lối vào 1, lối vào 2, siêu thị, nhà dân, ngân hàng, tiệm tạp hóa, cửa hàng điện thoại, trạm ATM Đối tượng mới này sẽ được khởi tạo các thông tin như: ID, vị trí, blob đối tượng, … và bắt đầu được theo vết
Một đối tượng đang được theo vết không tự nhiên biến mất khỏi khung cảnh, nó chỉ có thể bị che khuất bởi background, sát nhập với đối tượng khác hoặc đã di chuyển ra khỏi khung cảnh Vì vậy, nếu một đối tượng biến mất khỏi khung cảnh tại các lối ra vào thì xác suất đối tượng đó đã ra khỏi khung cảnh là rất lớn Đối tượng ra khỏi khung cảnh thì trạng thái của nó được lưu lại và tạm dừng theo vết trên đối tượng đó
Từng đối tượng riêng biệt sẽ được ánh xạ tương ứng với các blob ở frame hiện hành bằng phương pháp theo vết đối tượng đơn ở phần 4.2.1 Mỗi đối tượng sẽ lưu trữ thông tin: ID đối tượng, vùng ảnh màu của blob, chỉ số blob được ánh xạ và ID của nhóm đối tượng chứa đối tượng đang theo vết Blob được ánh xạ thành công sẽ có chỉ số blob ánh xạ lớn hơn 0, giá trị này chính là ID của một blob ở frame khác Giá trị của thông số nhóm của blob cho biết blob đang sát nhập với blob khác hay không Sau quá trình sàn lọc đầu tiên, nếu tất cả các đối tượng đều được ánh xạ với các blob từng đôi một thì theo vết đối tượng đã hoàn thành Nếu chỉ một số đối tượng được ánh xạ với một số blob trong frame hiện hành, một số đối tượng vẫn chưa được ánh xạ thì quá trình xử lý tiếp tục với hợp nhất và tách rời
Thêm đối tượng hay loại bỏ đối tượng đã được xử lý ở phần trên Giả sử không có đối tượng nào được thêm vào hay loại bỏ Sau quá trình tìm sự tương ứng giữa đối tượng và các blob hiện hành, nếu còn tồn tại đối tượng chưa được ánh xạ với blob ở frame t, thì đối tượng đó đã bị sát nhập với một đối tượng khác
Blob merge là tập các blob (đối tượng) ở frame t-1 chưa được ánh xạ với các blob ở frame t
Blob t-1 là tập N blob ở frame t-1
Blob t là tập M blob ở frame t-1
Blob merge = { } = Blob t-1 \ Blob t , 1 ≤ i ≤ N – M (4.8) gọi d(blob i , blob j ) là khoảng cách giữa tâm của blob i và blob j
Khi đó , 0 ≤ i ≤ N – M, sẽ thuộc blob ở frame t có khoảng cách đến nó là gần nhất, hay ánh xạ với ( , )), 1 ≤ i ≤ N – M và 1 ≤ j ≤ M
Nếu đối tượng đơn sát nhập với một đối tượng đơn thì tạo thành một đối tượng nhóm mới, hệ thống sẽ lưu lại trạng thái của hai đối tượng trước khi sát nhập Nếu đối tượng đơn nhập với một đối tượng nhóm có trước thì hệ thống chỉ cần lưu lại trạng thái đối tượng trước khi sát nhập
Thêm đối tượng hay loại bỏ đối tượng đã được xử lý ở phần trên Giả sử đối tượng trong khung cảnh không thay đổi Đối tượng được tách ra từ nhóm phải được nhận biết đó là đối tượng trước khi sát nhập với nhóm Sau quá trình tìm sự tương ứng giữa đối tượng và các blob hiện hành, nếu còn tồn tại blob ở frame t chưa được ánh xạ với bất kỳ blob nào ở frame t-1 (đối tượng), thì blob đó được tách ra từ một nhóm nào đó Gọi blob được tách rời là blob tr
Xét tất cả các blob nhóm ở frame t-1 trong vùng khả chuyển của blob tr Đối tượng nào thuộc blob nhóm có hàm lượng giá so với blob tr nhỏ nhất thì đối tượng đó chính là blob tr ở frame t Cách tính hàm lượng giá tượng tự như mục 4.3.1 f i = β + (1 - β) (4.9)
N: số đối tượng trong các nhóm trong vùng khả chuyển của blob tr
Co i : độ tương quan của blob tr so với các blob của các đối tượng trong nhóm ở trạng thái trước khi sát nhập nhóm
α i : góc hợp bởi vector giữa tọa độ tâm blob tr với tâm của nhóm và vector của từng blob thành viên trước khi sát nhập nhóm Đối tượng trong nhóm nào có hàm lượng giá nhỏ nhất thì đối tượng đó chính là đối tượng đã tách ra Nếu nhóm có hai đối tượng, sau khi tách thì nhóm sẽ không còn tồn tại Nếu nhóm có nhiều hơn hai đối tượng, sau khi tách thì nhóm vẫn còn tồn tại, chỉ có số đối tượng trong nhóm thay đổi.
Phân tích hành vi
Như đã đề cập ở mô hình tổng quan, để thấy rõ tính ứng dụng của đề tài, một khu dân cư sẽ được giả lập để phân tích hành vi Cụ thể như trong Hình 4.2
Hình 4.2: Mô hình khu dân cư
Hình 4.3: Môi trường thực tế dưới góc nhìn camera
Các địa điểm cần quan tâm trong khu dân cư: nhà dân, cửa hàng điện thoại, cửa hàng tạp hóa, ngân hàng, quán cafe, siêu thị và trụ ATM, lối vào 1, lối vào 2 và ở giữa là bồn hoa Khu dân cư được mô hình từ khung cảnh thực tế (Hình 4.3) theo góc nhìn camera Khung cảnh camera (Hình 4.3) được ánh xạ thành khung cảnh mô phỏng (Hình 4.2) thông qua tính toán phép chiếu phối cảnh như Hình 4.4
Hình 4.4: Mô hình ánh xạ Với:
A : hình chiếu thẳng góc của B xuống mặt đất
GHJF 2 : tương ứng với khung cảnh camera ở Hình 4.3
CEFD : tương ứng khung cảnh mô phỏng ở Hình 4.2
Một điểm J 2 bất kỳ thuộc khung cảnh camera sẽ được ánh xạ thành điểm E 2 thuộc khung cảnh mô hình AB, AL, DF, FE, EC, CD là các thông số được đo trong môi trường thực tế
Luận văn sử dụng phương pháp HMM ở phần 2.2 đề dự đoán hành vi của một người Như đã đề cập ở phần 4.1, hành vi con người có tính hướng đích, một người di chuyển trong khu dân cư (hình 4.2) sẽ thực hiện các luật di chuyển (luật Markov) tới các vị trí quan trọng trong môi trường
Trong MDP (Markov Decision Process) [11], môi trường bao gồm một tập các trạng thái Một luật markov π là một kế hoạch của một thực thể di chuyển qua mỗi trạng thái s trong không gian trạng thái S Một luật π được mô hình bởi một hàm chọn σ π : S × S → [0, 1] và hàm kết thúc β : S → [0, 1], trong đó σ π (s, s’) là xác suất thực thể di chuyển từ trạng thái hiện hành s vào trạng thái kế tiếp s’, và β π (s) là xác suất luật π kết thúc tại trạng thái hiện hành s Ta có: p(s’|π, s) = σ π (s, s’)
Khu dân cư có chín vị trí quan trọng nên ta định nghĩa chín luật di chuyển:
“NhaDan”, “CHDienThoai”, “TiemTapHoa”, “GDNganHang”, “UongCafe”,
“SDMayATM”, “LoiVao2”, “DiSieuThi”, “LoiVao1” Mỗi hành vi tương ứng với một luật di chuyển Một luật di chuyển được mô hình bằng một HMM Vì vậy, khu dân cư cần chín mô hình HMM
Mô hình HMM thứ i kí hiệu λ i = (A i , B i , π i ), 1 ≤ i ≤ 9, chuỗi O các vector đặc trưng đại diện cho quỹ đạo chuyển động Mỗi mô hình HMM trước khi sử dụng cần được huấn luyện Dữ liệu để huấn luyện cho mỗi HMM là một tập các chuỗi vector đặc trưng, quá trình huấn luyện được thực hiện theo phương pháp của Baum-Welch [13] Mỗi chuỗi vector đặc trưng được tính toán từ một video qua các bước: phát hiện chuyển động, theo vết đối tượng, xác định vector đặc trưng từ vị trí của đối tượng Khu dân cư không thay đổi, nên việc huấn luyện các thông số HMM chỉ cần thực hiện một lần Để giảm chi phí và thời gian tính toán, tập các chuỗi vector đặc trưng sẽ được huấn luyện offline và chúng sẽ được sử dụng khi chương trình bắt đầu chạy
S t-1 , S t : vị trí đối tượng tại thời điểm t-1 và t
A j , 1 ≤ j ≤ 9: vị trí địa điểm thứ j trong khu dân cư
Khi đó, vector đặc trưng tại thời điểm t được tính như sau:
Sau khi các mô hình HMM được huấn luyện các thông số, chúng được sử dụng để nhận biết cơ may một người thực hiện luật di chuyển nào dựa vào p(O | λ i ) [13] Để tránh hiện tượng khi nhân quá nhiều số thuộc khoảng (0, 1) làm giá trị kết quả vượt ngưỡng máy tính, ta sử dụng log p(O | λ i ) thay cho p(O | λ i ) Log p(O | λ i ) càng lớn thì cơ may đối tượng thực hiện hành vi thứ i càng lớn
Phần trăm xác suất các hành vi được tính: percent(λ i ) = ∑ ( | ) ( | ) , 1 ≤ i ≤ 9 (4.11) Với cách chọn vector đặc trưng chủ yếu phụ thuộc vào hướng của đối tượng so với các vị trí nên khi đối tượng tiến gần các vị trí, phần trăm xác suất không thay đổi đáng kể Trong thực tế, khi một người di chuyển ngày càng sát với mục tiêu thì cơ may người đó thực hiện mục tiêu tăng rất nhanh Vì vậy khi đối tượng tiến sát mục tiêu thì phần trăm xác suất cần được nhân với một hệ số α > 1 percent(λ i ) =
(4.13) với d j : khoảng cách từ đối tượng đến địa điểm thứ j trong môi trường, 1 ≤ j ≤ 9
Hệ số α > 1 được tính với ý nghĩa tăng độ tin cậy cho việc thực hiện hành vi α tỉ lệ nghịch với d j được tính như sau: α = ( ) (1 - + ) (4.14) trong đó:
β: hệ số điều chỉnh tốc độ tăng hoặc giảm
: khoảng cách từ đối tượng đến địa điểm thứ j lần đầu tiên thỏa điều kiện (4.12)
Percent(λ i ) cho thấy mức độ tin cậy thực hiện hành vi thứ i của đối tượng Đối tượng càng hướng đến gần địa điểm i thì Percent(λ i ) càng tăng, khi đối tượng thực hiện hành vi i (đã tới địa điểm i) thì Percent(λ i ) = 1
Hành vi bất thường được xét trong luận văn này gồm có hai dạng: đối tượng di chuyển vào một khu vực không được phép và đối tượng chuyển động theo một quỹ đạo lặp đi lặp lại theo một chu kỳ nào đó Hai loại bất thường này rất thường gặp trong thực tế
Di chuyển vào khu vực giới hạn:
Trong thực tế, có một số địa điểm mọi người có thể tiếp cận nó nhưng không được phép di chuyển qua nó Ví dụ như: hồ nước ở công viên, phòng trình quốc thư ở dinh độc lập, hay một số địa điểm trong viện bảo tàng, ….Vì vậy, di chuyển vào khu vực giới hạn là một hành vi bất thường cần được phát hiện Định nghĩa một tập các khu vực giới hạn S = {F 1 , F 2 , …, F n }, trong đó F i là khu vực giới hạn thứ i, 1 ≤ i ≤ n, chứa một tập các pixel trong vùng ảnh Gọi Leg j là vị trí chân của đối tượng j trong ảnh Một đối tượng vi phạm khu vực giới hạn nếu vị trí chân của đối tượng thuộc vùng ảnh S đã được định nghĩa
Quỹ đạo di chuyển lặp đi lặp lại:
Phát hiện đối tượng di chuyển vào khu vực giới hạn chỉ cần sử dụng vị trí hiện tại trong chuỗi quỹ đạo để xác định tính bất thường Tuy nhiên, các hành vi phức tạp hơn cần dựa vào lịch sử di chuyển của đối tượng, hay nói cách khác là phải dựa vào cả quỹ đạo chuyển động
Như đã trình bày ở mục 3.1, Ouivirach et al [14], Antonakaki et al[17] sử dụng mô hình HMM để phát hiện các hành vi bất thường HMM được kí hiệu: λ = (A, B, π) Một tập các hành vi bình thường được sử dụng để huấn luyện các thông số của λ Đặt O abnormal là chuỗi quan sát của một hành vi bất thường Một hành vi là bất thường khi chuỗi quan sát O abnormal của nó thỏa:
Theo góc nhìn khác, (4.15) cho thấy hành vi bất thường có quỹ đạo rất khác so với quỹ đạo của các hành vi bình thường
Mặt khác, mục tiêu phần này là phát hiện các đối tượng di chuyển theo một quỹ đạo lặp đi lặp lại, hành vi bất thường này rất phổ biến trong thực tế như: hành vi trộm cắp xe máy của một cửa hàng hay hành vi phá hoại tài sản, … Đối tượng sẽ di chuyển qua lại để quan sát trước khi ra tay hành động Quỹ đạo của đối tượng nằm trên quỹ đạo di chuyển của hành vi bình thường nên không thể phát hiện loại hành vi này là bất thường dựa vào (4.2) Phần này sẽ đưa ra một phương pháp mới để phát hiện loại hành vi này Ý tưởng hiện thực như sau:
KẾT QUẢ THỰC NGHIỆM VÀ ĐÁNH GIÁ
Tập dữ liệu
Như đã trình bày ở các phần trên, vì nhiều nguyên nhân, nên luận văn không thể sử dụng các tập dữ liệu chuẩn như: YouTube, CAVIAR, PETS, SPEVI, Dữ liệu của luận văn được thu thập trước khoa xây dựng đại học Bách Khoa thành phố
Hồ Chí Minh Một camera được đặt tại vị trí cao so với mặt đất, dữ liệu thu được gồm các video huấn luyện để dự đoán hành vi đối tượng di chuyển trong môi trường, video phát hiện hành vi xâm phạm khu vực giới hạn và video phát hiện hành vi di chuyển qua lại một số chu kỳ Các video được quay tốc độ 25frames/s với độ phân giải 720 × 576 Chi tiết dữ liệu được trình bày trong từng phần thực nghiệm cụ thể ở các phần sau.
Kết quả thực nghiệm và đánh giá
Chương trình được hiện thực bằng ngôn ngữ C++ trên Microsoft Visual Studio 2012 Chương trình có sử dụng một số thư viện như: Opencv-2.4.3, bgslibrary, cvblob-0.10.4, google-diff-match-patch Kết quả kiểm thử của luận văn thu được trên máy tính laptop Dell Vostro 3500 có cấu hình như sau:
Bộ vi xử lý: Intel(R) Core(TM) i5 CPU M460@ 2.53GHz 2.53 GHz
Hệ điều hành: Window 8 Ultimate 64-bit
5.2.1 Phát hiện đối tượng chuyển động
Luận văn sử dụng phương pháp Eigenbackground được hiện thực trong thư viện mã nguồn mở bgslibrary để phát hiện đối tượng chuyển động (Hình 5.1) Với thông số được cài đặt N = 100, M = 20, thời gian xử lý của phương pháp khá chậm so với các phương pháp khác như 1-G, MinMax, GMM, …[22] Tuy nhiên, luận văn được thực hiện trong điều kiện môi trường ít thay đổi nên phương pháp cho kết quả khá tốt, các đối tượng được phát hiện rất rõ ràng Vì vậy, kết quả phát hiện đối tượng phù hợp làm dữ liệu đầu vào cho các bước xử lý sau này
Hình 5.1: Phát hiện đối tượng chuyển động 5.2.2 Theo vết đối tượng
Xét ngữ cảnh có 6 người di chuyển trong khu vực quan sát Các đối tượng được phát hiện ở frame 16 như Hình 5.2 Đến frame 37 không có sát nhập cũng như tách rời xảy ra Kết quả theo vết như Hình 5.3 Đến frame 39 (Hình 5.4), đối tượng 1 sát nhập đối tượng 4, đối tượng nhóm mới được tạo ra với ID = 100 Đối tượng 1 và 4 được lưu lại trạng thái
Hình 5.2: Các đối tượng ở frame 16
Hình 5.3: Đối tượng được theo vết ở frame 37
Hình 5.4: Đối tượng 1 sát nhập đối tượng 4 tạo thành đối tượng 100 ở frame 39 Ở frame 113 (Hình 5.5), đối tượng 2 sát nhập với nhóm đối tượng 100 Ở trường hợp này do đối tượng 100 là một nhóm đã chứa hai đối tượng nên không có nhóm mới nào được tạo thành, chỉ có thông số của đối tượng 100 được cập nhật là chứa 3 đối tượng Trạng thái đối tượng 2 được lưu lại
Hình 5.5: Đối tượng 2 sát nhập với nhóm 100 ở frame 113 Ở frame 128 (Hình 5.6), đối tượng 4 tách ra khỏi nhóm 100, nhóm vẫn còn tồn tại vì vẫn còn 2 phần tử trong nhóm Thông số của nhóm 100 được cập nhật lại Và ở frame 132 (Hình 5.7), đối tượng 2 và 1 tách khỏi nhóm 100, do không còn đối tượng nào, nên nhóm 100 bị xóa bỏ
Hình 5.6: Đối tượng 4 tách khỏi nhóm 100 ở frame 128
Hình 5.7: Đối tượng 1 và 2 tách khỏi nhóm 100 frame 132 Đánh giá:
Trong môi trường luận văn, với tập video dữ liệu, Giải thuật đã hiện thực thành công các chức năng cơ bản trong theo vết đối tượng Các đối tượng đã được theo vết chính xác từ theo vết một đối tượng cho đến theo vết nhiều đối tượng Tuy nhiên, trong trường hợp tổng quát, giải thuật vẫn còn tồn tại một số nhược điểm cố hữu của phương pháp matching blob: khi hai hay nhiều đối tượng có trang phục gần giống nhau đứng gần nhau thì việc so trùng bằng phương pháp matching blob dễ bị sai sót Hay khi hai hay nhiều đối tượng giống nhau đứng gần nhau hoặc sát nhập với nhau, sau đó tách rời và đi theo hướng khác với hướng di chuyển trước đó thì phương pháp kết hợp matching blob và hướng di chuyển của luận văn dễ gặp phải sai sót
Các trường hợp phức tạp của theo vết nhiều đối tượng như:
hai hay nhiều đối tượng sau khi tách khỏi nhóm đối tượng thì bị che khuất bởi background
Hai hay nhiều đối tượng sau khi tách khỏi nhóm đã lập tức sát nhập với một nhóm khác
Các đối tượng sát nhập hoặc tách rời tại các vị trí lối ra vào của khung cảnh Với mục tiêu tập trung nhận dạng hành vi, nên các kết quả đạt được trong theo vết đối tượng trong luận văn đủ để làm dữ liệu đầu vào cho phân tích hành vi 5.2.3 Phân tích hành vi
Dữ liệu phần này được thu thập dưới dạng video gồm hai phần: tập video huấn luyện và các video kiểm tra Video huấn luyện bao gồm 42 đoạn video và tổng thời gian là 7 phút 7 giây Mỗi đoạn video là một di chuyển mẫu để huấn luyện hành vi Video kiểm tra gồm một tập video, xét một video cụ thể: ngữ cảnh gồm sáu người di chuyển trong khu dân cư với quỹ đạo như Hình 5.8
Hình 5.8: Quỹ đạo chuyển động của 6 đối tượng
Đối tượng 0: di chuyển đến siêu thị
Đối tượng 1: ra khỏi khu dân cư qua lối vào 1
Đối tượng 2: mua hàng tại cửa hàng tạp hóa
Đối tượng 3: mua điện thoại ở cửa hàng điện thoại
Đối tượng 4: ra khỏi khu dân cư qua lối vào 2
Đối tượng 5: ra khỏi khu dân cư qua lối vào 2
Hành vi của từng đối tượng được cập nhật và dự đoán qua từng frame Ví dụ tại frame 220, vị trí (Hình 5.9) và quỹ đạo (Hình 5.10) cho thấy: đối tượng 0 đang có xu hướng đi siêu thị, đối tượng 1 có xu hướng tiến tới lối vào 1, đối tượng 2 đã tiến sát cửa hàng tạp hóa nên xác suất mua hàng ở tiệm tạp hóa rất lớn, tương tự: đối tượng 3 đang tiến đến cửa hàng điện thoại, đối tượng 4 đang tiến tới lối vào 2 và đối tượng 5 chưa có ý định rõ ràng Xác suất thực hiện hành vi của mỗi đối tượng ở frame 220 được biểu diễn chi tiết trong Bảng 5.1 Hàng biểu diễn cho đối tượng, cột biểu diễn hành vi Hành vi có xác suất lớn nhất của mỗi đối tượng sẽ được tô màu xanh Ví dụ: đối tượng “object 0” có xu hướng đi siêu thị vì có xác suất thực hiện hành vi “ĐiSieuThi” cao nhất là 26.84%
Hình 5.9: Vị trí của 6 đối tượng tại frame 220
Hình 5.10: Quỹ đạo của 6 đối tượng tại frame 220
Bảng 5.1: Xác suất hành vi của 6 đối tượng tại frame 220
Bảng 5.1 cho thấy xác suất hành vi của 6 đối tượng tại một thời điểm Trong khi đó nhận biết hành vi của một người phụ thuộc rất lớn vào lịch sử chuyển động của đối tượng Nên các hình sau (Hình 5.11 đến Hình 5.16) cho thấy xác suất hành vi của từng đối tượng theo thời gian: trục đứng biểu diễn xác suất hành vi, trục ngang biểu diễn thời gian Biểu đồ hình 5.11 cho thấy đối tượng 0 di chuyển từ lối vào 2 qua siêu thị Lúc đầu đối tượng 0 hướng về siêu thị nên có dự đoán đi siêu thị là cao nhất, sau một thời gian đối tượng đổi hướng di chuyển: có thể di chuyển qua nhà dân, có thể ra khỏi khung cảnh qua lối vào 1, có thể tiến vào tiệm tạp hóa hay cửa hàng điện thoại nên xác suất dự đoán đi siêu thị giảm xuống, càng về sau, định hướng đi siêu thị càng tăng rõ rệt và càng gần với siêu thị nên xác suất đi siêu thị tăng nhanh và khi đối tượng 0 đi vào siêu thị thì xác suất tiến sát tới 1 Tương tự cho các biểu đồ còn lại, khi đối tượng chưa được xác định rõ địa điểm hướng tới thì xác suất các hành vi gần bằng nhau, khi định hướng rõ ràng thì xác suất hành vi tăng nhanh cho thấy đối tượng sẽ thực hiện hành vi này Ở Hình 5.16, đối tượng 5 đang ở một vị trí có thể di chuyển đến ngân hàng, quán cà phê, trụ ATM hay lối vào
2 nên xác suất các hành vi này gần bằng nhau, không hành vi nào có xác suất vượt trội so với các hành vi khác Vào thời điểm này hành vi di chuyển đến lối vào 2 tạm thời được dự đoán cao hơn các hành vi khác
Hình 5.11: Biểu đồ xác suất hành vi của đối tượng 0 theo thời gian
Hình 5.12: Biểu đồ xác suất hành vi của đối tượng 1 theo thời gian
Hình 5.13: Biểu đồ xác suất hành vi của đối tượng 2 theo thời gian
Hình 5.14: Biểu đồ xác suất hành vi của đối tượng 3 theo thời gian
Hình 5.15: Biểu đồ xác suất hành vi của đối tượng 4 theo thời gian
Hình 5.16: Biểu đồ xác suất hành vi của đối tượng 5 theo thời gian Đánh giá: Ý tưởng phần trăm xác suất hành vi được tham khảo chủ yếu ở công trình nghiên cứu của Nam T Nguyen và Hung H Bui [10, 11] Công trình đã hiện thực nhận dạng phần trăm hành vi con người trong môi trường rộng và có cấu trúc phân tầng với nhiều camera Do điều kiện hạn chế, nên dữ liệu mô phỏng của luận văn này là khung cảnh rộng và không có cấu trúc phân tầng Chính vì vậy, luận văn chưa thể hiện thực nhận dạng hành vi con người với cấu trúc môi trường phức tạp hơn với nhiều camera quan sát hơn
Tuy nhiên xét theo mô hình giả lập khu dân cư như hình 4.2, hành vi của một người khi tiến vào khu dân cư được phát hiện đúng và kịp thời Vì vậy tính ứng dụng của xác xuất hành vi trong luận văn đủ để đáp ứng yêu cầu thực tế trong nhiều trường hợp với chi phí thấp (chỉ sử dụng một camera)
5.2.3.2 Hành vi bất thường: a Di chuyển vào khu vực cấm:
Trong khu dân cư (Hình 4.2), bồn hoa F ở giữa khu dân cư không được phép vượt qua Xét ngữ cảnh hai người di chuyển vào khu dân cư (Hình 5.17) Trước khi bước qua bồn hoa, không có hành vi bất thường nào được phát hiện với hai đối tượng này nên cả hai đều được biểu diễn bằng màu xanh (Hình 5.18) Đối tượng 0 di chuyển ngang qua bồn hoa bị phát hiện là hành vi bất thường và được đánh dấu màu đỏ (Hình 5.19) Sau khi đối tượng 0 đã vượt qua bồn hoa và di chuyển tiếp thì đối tượng 0 này vẫn được đánh dấu là bất thường (màu đỏ) ở Hình 5.20
Hình 5.17: Quỹ đạo hai người di chuyển trong khu dân cư
Hình 5.18: Hai đối tượng trước khi vượt qua bồn hoa
Hình 5.19: Đối tượng 0 vượt qua bồn hoa, được đánh dấu màu đỏ
Hình 5.20: Đối tượng 0 vẫn bị đánh dấu sau khi đã vượt qua bồn hoa Đánh giá:
Phương pháp phát hiện dạng hành vi bất thường này được hiện thực đơn giản, chỉ sử dụng xử lý ảnh thuần túy Tuy nhiên, hành vi bất thường này khi kết hợp với xác suất hành vi cho kết quả khá tốt trong việc hiểu hành vi Đối tượng 0 leo qua bồn hoa là hành vi bất thường nhưng với mục đích gì? Kết hợp với xác suất hành vi cho thấy đối tượng 0 leo qua bồn hoa F để tiện lợi cho việc ra khỏi khu dân cư qua lối vào 2 Vì vậy, phương pháp này tuy đơn giản, nhưng nó có thể được sử dụng hiệu quả trong nhiều trường hợp trong thực tế b Quỹ đạo di chuyển lặp đi lặp lại:
TỔNG KẾT
Kết luận
Luận văn đã xây dựng khung phân tích hành vi gồm các bước từ phát hiện đối tượng chuyển động, theo vết đối tượng và phân tích hành vi Công việc được chia thành các phần như sau:
Xây dựng tập dữ liệu mẫu: tập dữ liệu mẫu được quay thông qua một camera Dữ liệu được quay nhiều lần với các kịch bản được viết trước
Hiện thực các chức năng cơ bản của các tầng như: phát hiện đối tượng chuyển động, theo vết một đối tượng đến theo vết nhiều đối tượng
Hiện thực phần chính của luận văn: phân tích hành vi
Mục tiêu chính của luận văn là phân tích hành vi con người gồm hai phần chính như sau:
Xác suất hành vi: luận văn đã xây dựng giải thuật để nhận biết hành vi con người qua frame dựa vào chỉ số xác suất hành vi Xác suất hành vi nào càng lớn thì đối tượng đó được dự đoán thực hiện hành vi đó càng lớn
Hành vi bất thường: luận văn đã hiện thực phát hiện hai loại hành vi bất thường: hành vi di chuyển qua một khu vực giới hạn và hành vi di chuyển qua lại theo một chu kỳ nào đó Đối tượng bị phát hiện hành vi bất thường sẽ bị đánh dấu và theo dõi qua từng frame
6.1.2 Ưu điểm và nhược điểm
Hiện thực thành công phát hiện đối tượng chuyển động và theo vết đối tượng trong môi trường thí nghiệm của luận văn
Một khu dân cư được giả lập để thấy rõ tính ứng dụng của luận văn
Hiện thực thành công nhận dạng hành vi dựa vào xác suất hành vi
Hiện thực thành công hai loại hành vi bất thường phổ biến trong thực tế: di chuyển vào một khu vực giới hạn và di chuyển qua lại theo một chu kỳ nào đó
Kết hợp giữa nhận dạng hành vi và phân tích hành vi bất thường, cùng với phương pháp phát hiện hành vi di chuyển qua lại theo một chu kỳ là đóng góp chính của luận văn
Như đã trình bày ở mục 4.1, luận văn không thể tận dụng các tập dữ liệu chuẩn như: YouTube, CAVIAR, PETS, SPEVI, Tập dữ liệu để kiểm thử chương trình phải tự tạo Vì thế, kết quả thu được khó có thể so sánh với các phương pháp khác hay các công trình liên quan
Ngoài ra, vì thời gian xây dựng mô hình phân tích hành vi là tương đối ngắn, nên hệ thống không tránh khỏi một số mặt hạn chế như:
Mặc định đối tượng xuất hiện trong khung cảnh là con người
Theo vết đối tượng chỉ có thể hiện thực các trường hợp cơ bản, các vấn đề phức tạp hơn như trong mục 5.2.2 chưa thể hiện thực được
Đánh giá kết quả hành vi của đối tượng chỉ mang tính tương đối Điều này cũng là hạn chế chung cho lĩnh vực nhận dạng hành vi, như đã trình bày trong mục 2.3
Chương trình mới chỉ hiện thực cho môi trường đơn được quay bằng một camera Môi trường phân cấp với nhiều camera chưa được luận văn xét tới.
Hướng phát triển trong tương lai 64 TÀI LIỆU THAM KHẢO a
Từ một số hạn chế, tôi đề xuất một số hướng phát triển trong tương lai như sau:
Nghiên cứu và hiện thực phân loại đối tượng di chuyển vào khu vực quan sát
Xây dựng hệ thống theo vết đối tượng và nhận dạng hành vi trong môi trường phân cấp với nhiều camera giám sát
Nghiên cứu phát triển giải thuật quản lý tập dữ liệu hành vi bất thường mẫu khi tập này có kích thước lớn, sao cho kết quả có thể đáp ứng thời gian thực
[1] A.R.Revathi, Dhananjay Kumar, “a review of human activity recongnition and behavior understanding in video surveillance”, The Visual Computer, pp 1-27, doi:10.1007/s00371-012-0752-6, 2012
[2] M Piccardi, “Background subtraction techniques: a review”, In IEEE Int Conf on Systems, Man and Cybernetics, volume 4, 2004
[3] Michael H Fischer, and Jiyan Pan, “A Novel Visual Tracking Algorithm based on Adaptive Three-Step Search, Hybrid Correlation, and Adaptive Template Renewal”, Stanford Undergraduate Research Journal (SURJ), vol
[4] Salah, A.A., Gevers, T., Sebe, N., and Vinciarelli, “Challenges of human behavior understanding”, in HBU'10 Proceedings of the First international conference on Human behavior understanding, 2010, pp 1-12
[5] D Gowsikhaa, S Abirami, R Baskaran, “Automated human behavior analysis from surveillance videos: a survey”, Artificial Intelligence Review, 2012 [6] Weiming Hu, Tieniu Tan, Fellow, Liang Wang, and Steve Maybank, “A Survey on Visual Surveillance of Object Motion and Behaviors”, IEEE Transaction on system, Vol 34, No 3, 2004, pp 708-723
[7] F Bremond, M Thonnat, and M Zuniga, "Video understanding framework for automatic behavior recognition", Behav Res Methods, vol 3, no 38,
[8] Teddy Ko, “A Survey on Behavior Analysis in Video Surveillance Applications”, Video Surveillance, Prof.Weiyao Lin (Ed.), ISBN: 978-953- 307-436-8, InTech, 2011
[9] Eugene W Myers, “An O(ND) Difference Algorithm and Its Variations”, Algorithmica, vol 1, pp 251-266, 1986
[10] N T Nguyen, S Venkatesh, G West, and H H Bui “Hierarchical monitoring of people’s behaviors in complex environments using multiple cameras” In
International Conference on Pattern Recognition, Quebec City, QC, August
[11] N.T Nguyen, H.H Bui, S Venkatesh, G West, “Recognising and monitoring high-level behaviours in complex spatial environments”, in IEEE Computer Society Conference on Computer Vision and Pattern Recognition, Wisconsin, USA, 2003
[12] Hanqing Zhang, Yucai Wang, Haitao Li, “Based on Human Position and Motion Trajectory for Behavior Detection”, Computer Science for Environmental Engineering and EcoInformatics, vol 159, pp 389-394, 2011 [13] Rabiner, L.R., “A tutorial on hidden markov models and selected applications in speech recognition”, Proceedings of the IEEE 77(2), pp 257–286 , 1989 [14] K Ouivirach, S Gharti, M.N Dailey, “Automatic suspicious behavior detection from a small bootstrap set”, in VISAPP, 2012, pp 655-658
[15] J Park, S Park, and J Aggarwal, “Model-based human motion tracking and behavior recognition using hierarchical finite state automata”, In ACM Conference on Image and Video Retrieval, 2003
[16] Masafumi Sugimoto, Thi Thi Zin, Takashi Toriu, Shigeyoshi Nakajima,
“Robust Rule-Based Method for Human Activity Recognition” , IJCSNS, Vol
[17] Panagiota Antonakaki, Dimitrios Kosmopoulos, and Stavros J Perantonis
“Detecting abnormal human behaviour using multiple cameras”, Signal Processing, vol 89,pp 1723-1738, 2009
[18] Weilun Lao, Jungong Han, Peter H N de With, “Flexible human behavior analysis framework for video surveillance applications”, Int J Digit Multimed Broadcast, pp 1–9, 2010
[19] Pierre-Marc Jodoin, Janusz Konrad, and Venkatesh Saligrama, “Behavior subtraction”, in Proc SPIE Visual Communications and Image Process, Jan
[20] De Wit S, Dickinson A, “Associative theories of goal-directed behaviour: a case for animal-human translational models”, Psychol Res, vol 73, pp 463-
[21] N M Oliver, B Rosario, and A Pentland, “A Bayesian computer vision system for modeling human interactions”, IEEE Transactions on Pattern Analysis and Machine Intelligence, vol 22, iss 8, pp 831-843, 2000
[22] Y Benezeth, P.-M Jodoin, B Emile, H Laurent, C Rosenberger,
“Comparative Study of Background Subtraction Algorithms”, Journal of Electronic Imaging, vol 19, 2010
[23] M A Ali, S Indupalli, B Boufama, “Tracking Multiple People for Video Surveillance”, First Intern Workshop on Video Processing for Security, June