1
ABSTRACT
Our thesis’ topic is object tracking using Particle Filter, which we will do research how
to track an object using Partcle Filter, building demo applications.
Object tracking in computer vision has been done research for many years, but so
far it is still considered an “open” problem. However, currently there is a method of
object tracking that its effectiveness has been proven in many studies around the world,
it is recognized as a "State of the art" - that is the Particle filte. So, we have carried out
to do resrearch interesting subject based on the guidance of teachers and the materials
of the university, the seminar on this subject.
In this thesis, we limit to introduce the theoretical basis of the particle filter, and
base on open source of the other research to improve of its experimental application in
the situation of tracking moving objects – selecting from the first frame or a specific
object (face, pedestrian ...) and build the performace assessment to demonstrate the
effectiveness of the object tracking method.
GVHD: ThS. Nguyễn Hữu Thương
SVTH: Chu Hoàng Nhật & Hà Thị Minh Phương
2
LỜI MỞ ĐẦU.
Đề tài luận văn của chúng tôi là theo vết chuyển động dùng Particle Filter, trong đó
chúng tôi sẽ nghiên cứu cách thức theo dõi một đối tượng dùng Partcle Filter, xây dựng
ứng dụng thực nghiệm.
Theo vết chuyển động trong công nghệ cảm quan máy tính (computer vision) đã
được nghiên cứu trong nhiều năm, nhưng cho tới nay nó vẫn được xem là một vấn đề
m. Tuy nhiên, hiện nay đã có một phương pháp theo vết chuyển động mà tính hiệu quả
của nó đã được chứng minh trong nhiều nghiên cứu trên thế giới, nó được công nhận là
một “State of the art” – đó chính là Particle filte. Vì vậy, chúng tôi đã tiến hành nghiên
cứu đề tài thú vị này dựa trên sự hướng dẫn của thầy cô và các tài liệu của các trường
đại học, các hội nghị chuyên đề về đề tài này.
Trong khóa luận này, chúng tôi giới hạn trong việc giới thiệu cơ sở lý thuyết của
particle filter, dựa trên cơ sở mã nguồn phát triển cải tiến một số xây dựng các bảng
đánh giá kết quả trong quá trình thực hiện các thực nghiệm để chứng minh tính hiệu
quả của phương pháp theo vết chuyển động này.
GVHD: ThS. Nguyễn Hữu Thương
SVTH: Chu Hoàng Nhật & Hà Thị Minh Phương
3
LỜI CẢM ƠN.
Đầu tiên, chúng em xin gửi lời cảm ơn chân thành đến hai thầy Th.S Nguyễn
Hữu Thương và C.H Cáp Phạn Đình Thăng đã giúp đỡ và giới thiệu chúng em đến với
đề tài khóa luận này. Không những thế, trong quá trình thực hiện khóa luận, hai thầy đã
chỉ bảo và hướng dẫn tận tình cho chúng em những kiến thức lý thuyết chuyên ngành
thông qua các sách, bài báo, các buổi thuyết trình, cũng như cách xây dựng bố cục,
cách viết một khóa luận tốt nghiệp…Hai thầy đã giúp đỡ chúng em rất nhiều, giúp
chúng em hoàn thành tốt khóa luận tốt nghiệp.
Chúng em xin chân thành biết ơn hai thầy nói riêng và tất cả các quý thầy cô
Khoa Công nghệ Phần mềm – Trường Đại học Công Nghệ Thông Tin – Đại học Quốc
gia TPHCM đã giúp chúng em rất nhiều trong quá trình học tập.
TP Hồ Chí Minh, ngày 30 tháng 12 năm 2011
Sinh viên
Chu Hoàng Nhật
Hà Thị Minh Phương
GVHD: ThS. Nguyễn Hữu Thương
SVTH: Chu Hoàng Nhật & Hà Thị Minh Phương
4
NHẬN XÉT
(Giảng viên hướng dẫn)
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
GVHD: ThS. Nguyễn Hữu Thương
SVTH: Chu Hoàng Nhật & Hà Thị Minh Phương
5
NHẬN XÉT
(Giảng viên phản biện)
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
…………………………………………………………………………………
GVHD: ThS. Nguyễn Hữu Thương
SVTH: Chu Hoàng Nhật & Hà Thị Minh Phương
6
MỤC LỤC
GVHD: ThS. Nguyễn Hữu Thương
SVTH: Chu Hoàng Nhật & Hà Thị Minh Phương
7
DANH MỤC CÁC BẢNG, SƠ ĐỒ, HÌNH
HÌNH
BẢNG
GVHD: ThS. Nguyễn Hữu Thương
SVTH: Chu Hoàng Nhật & Hà Thị Minh Phương
8
1. GIỚI THIỆU:
Theo vết đối tượng thông qua từng khung hình của một chuỗi hình ảnh là một
chức năng chủ yếu trong các ứng dụng thị giác máy tính (computer vision
applications) bao gồm các ứng dụng trong lĩnh vựa an ninh như hệ thống camera
theo dõi truyền thống, đảm nhận vai trò theo dõi và cảnh báo, giúp giám sát viên
không phải trực tiếp quan sát 24/24: phát hiện chuyển động và cảnh báo xâm
phạm, phát hiện các tình huống bất thường dựa trên nhận dạng cử động như ẩu
đả, cướp ngân hàng, nguy cơ chết đuối; ứng dụng phổ biến hiện nay là theo dõi
lưu thông: cảnh báo sớm tình trạng ùn tắc, ghi nhận các trường hợp phóng nhanh
lạng lách, chụp và truy suất số xe vi phạm để xử lí ...; một ứng dụng khác đang
được nghiên cứu phát triển là điều khiển xe tự hành, hệ thống camera ghi nhận
hình ảnh xung quanh khi xe di chuyển, bằng cảm quan máy tính, định vị làn
đường, phát hiện các vật cản và xe khác, nhận biết các bảng chỉ dẫn ... để điều
khiển xe; ngoài ra còn một số ứng dụng khác tương tác giữa người và máy thông
qua cử động.
Hình 1 – Theo dõi khách bộ hành
(nguồn: IEEE Computer Vision and Pattern Recognition, 2007).
Hình 2 - Hệ thống camera điều khiển xe tự hành SCABOR
(nguồn: Technological University of Cluj Napoca).
GVHD: ThS. Nguyễn Hữu Thương
SVTH: Chu Hoàng Nhật & Hà Thị Minh Phương
9
Hiện nay còn nhiều vấn đề và các lỗi trong các trường hợp phức tạp của bài
toán theo vết đối tượng. Do đó, nhiều kĩ thuật được phát triển để giải quyết các
vấn đề của bài toán.
Theo vết dựa trên hình ảnh: phương pháp này trích xuất ra các đặc tính
chung và sau đó nhóm chúng lại dựa trên thông tin ngoại cảnh ở mức cao hơn.
Điển hình, Intille et al. (1997) đề xuất một blob-tracker để theo dõi con người
trong thời gian thực. Background được loại trừ để lấy được phần foreground. Các
khu vực foreground sau đó được chia thành các đốm màu dựa trên màu sắc. Cách
này nhanh, nhưng nó có một bất lợi lớn về kết hợp các đốm màu khi các đối
tượng tiến lại gần nhau.
Theo vết dựa trên đường viền (contour):.với giả thiết rằng các đối tượng
được xác định bởi các đường bao quanh với một số thuộc tính xác định. Xây
dựng các mô hình hình dạng (đường viền), mô hình đường viền động học và các
thông số hình ảnh khác trong quá trình theo dõi. Điển hình nghiên cứu Yezzi and
Soatto (2003), Jackson et al. (2004), và Rathi et al. (2005). Yezzi and Soatto
(2003) đề xuất một định nghĩa cho sự biến dạng chuyển động và hình dạng áp
dụng cho đối tượng biến dạng hay di chuyển
Theo vết dựa trên Filtering: Filter và Particle Filter được nghiên cứu.
Kalman Filter giải quyết với việc theo dõi hình dạng và vị trí theo thời gian trong
các hệ thống tuyến tính năng động. Mặc khác, Particle Filter không giới hạn cho
các hệ thống tuyến tính.Ý tưởng cơ bản của Particle Filter là mật độ gần đúng
sau bằng cách sử dụng bộ lọc Bayesian một đệ quy bằng cách sử dụng một tập
hợp của các hạt có trọng lượng được giao. Điển hình như theo dõi các hình dạng
đối tượng và vị trí theo thời gian được xử lý bởi Kalman Filter trong trường hợp
của các hệ thống tuyến tính (Rehg và Kanade, 1994). Đối với Kalman Filter thì
có thể áp dụng khi hệ tuyến tính và có xét nhiễu Gauss. Điều này thực sự gây ra
nhiều trở ngại trong việc giải quyết nhiều vấn đề trong thực tế vì như đã nói ở
trên, các độ đo thu được thường là các đại lượng phi tuyến và có phân phối phi
Gauss, Anderson và Moore năm 1979 đưa ra thuật toán lọc Kalman mở rộng
(Extended Kalman Filter - EKF). Thuật toán này là một trong những thuật toán
GVHD: ThS. Nguyễn Hữu Thương
SVTH: Chu Hoàng Nhật & Hà Thị Minh Phương
10
tốt nhất để giải bài toán phi Gauss và phi tuyến lúc bấy giờ. Thuật toán này hoạt
động dựa trên ý tưởng tuyến tính hóa (Linearization) các quan sát thu được bằng
cách ước lượng các đại lượng này bằng một chuỗi khai triển Taylor. Tuy nhiên,
trong nhiều trường hợp, chuỗi ước lượng trong EKF mô hình hóa rất kém những
hàm phi tuyến và phân phối xác suất cần quan tâm. Và kết quả là thuật toán sẽ
không hội tụ. Julier và Uhlmann năm 1996 đề xuất một thuật toán lọc theo
hướng xấp xỉ một hàm phân phối xác suất dạng Gauss chứ không xấp xỉ một
hàm phân phối phi tuyến bất kỳ. Thuật toán này được đặt tên là Unscented
Kalman Filter (UKF). Thuật toán này đã được chứng minh là có kết quả tốt hơn
EKF. Tuy nhiên, giới hạn của UKF là nó không thể được áp dụng trong các bài
toán có phân phối phi Gauss tổng quát
Được chấp nhận rộng rãi là Particle Filter, xét về mặt hiệu suất Particle Filter
hiệu quả hơn Kalman Filter (Chang et al, 2005), vì Particle Filter đưa ra một
framework theo vết đối tượng mà không bị giới hạn trong trường hợp tuyến tính.
Phân loại
Đặc điểm chính
Các nghiên cứu liên quan
Blob-tracker
Intille et al. (1997
Skin color and elliptical
Huang and Trivedi (2004)
Continuous
edgesdensity
Rabiner (1989)
Theo vết dựa trên hình
Markov
hidden model (CDHMM)
Multi-color model
Bhandarkar and Luo
ảnh
Level-set method or
(2005)
geometric
partial differential
Gan et al. (2005)
Skinequations
color filtering
Chen and Tiddeman
2D human appearance
Thome(2005)
and Miguet
model
Snakes
(2005)
Kass et
al. (1987)
GVHD: ThS. Nguyễn Hữu Thương
SVTH: Chu Hoàng Nhật & Hà Thị Minh Phương
11
Active contour
Blake and Isard (1998)
Isard (1998) MacCormick
(2000)
Theo vết dựa trên đường
viền
Level set technique
Sethian (1989)
Yezzi and Soatto (2003)
Jackson et al. (2004)
Rathi et al. (2005)
Kalman filter (KF)
Rehg and Kanade (1994)
Theo vết dựa
Extended Kalman Filter
Jebara et al. (1998)
trên Kalman-
(EKF)
KF with ellipse and color
Zhao et al. (2004)
KF with elastic matching
Girondel et al. (2004)
Luo and Bhandarkar
Condenstaion algorithm
(2005)
Isard
(1998)
PF with partitioned
MacCormick and Isard
Theo vết
PF with sampling
optimal proposal
distribution (OPD)
(2000)
Doucet et al. (2001)
dựa trên
Kalman particle filter
filter
(KPF) and unscented
filtering
Theo vết dựa
trên Partilce
Filter
PF particle
with Markov
random
filter (UPF)
field
(MRF)
Kernel particle filter
PF with geometric active
contours
Li et al. (2003)
Wang and Cheong (2005)
Chang et al. (2005)
Rathi et al. (2005)
Multiple-blob tracker
(BraMBLe)
Isard and MacCormick
Boosted particle filter
Okuma et al. (2004)
(2001)
Bảng 1:Các phương thức theo (BPF)
vết và các nghiên cứu tiêu biểu.
GVHD: ThS. Nguyễn Hữu Thương
SVTH: Chu Hoàng Nhật & Hà Thị Minh Phương
12
Ngoài ra, trong khóa luận này sẽ có sử dụng bài toán nhận dạng đối tượng cụ
thể (điển hình quan trọng là khuôn mặt); do đó chúng ta sẽ giới thiệu về bài toán
nhận dạng. Cũng tương bài toán theo vết đối tượng thì phát hiện và nhận dạng
một đối tượng cụ thể cũng có ý nghĩ quan trọng trong ứng dụng thị giác máy
tính. Một ứng dụng gần gũi nhất là nhận dạng khuôn mặt phổ biến trên một số
dòng máy tính xách tay, hiện tại có kĩ thuật nhận dạng khuôn mặt đã khá hoàn
thiện: phát hiện khuôn mặt bằng cách sử dụng phương pháp máy học và dự toán
thống kê đã chứng minh kết quả xuất sắc trong tất cả các phương pháp nhận diện
khuôn mặt hiện có. Nhiều nghiên cứu đã được tiến hành trong khu vực kỹ thuật
nhận diện khuôn mặt, chẳng hạn như AdaBoost (Viola và Jones, 2001a; Viola và
Jones, 2001b), FloatBoost (Li et al, 2002.), S-AdaBoost (Jiang và Loe, năm
2003), mạng nơ-ron (Rowley et al, 1996; Curran et al, 2005), Support Vector
Machines (SVM) (Osuna et al, 1997, Shih và Liu, năm 2004), mô hình Markov
ẩn (Rabiner và Jung, năm 1993), và phân loại Bayes (Schneiderman và Kanade
năm 1998; Schneiderman, 2004). Viola và Jones (2001a, 2001b) đề xuất một
thuật toán nhận dạng khuôn mặt AdaBoost, có thể phát hiện khuôn mặt trong
một cách nhanh chóng và mạnh mẽ với tỷ lệ phát hiện cao. Li et al. (2002) đề
xuất các thuật toán FloatBoost, một phiên bản cải tiến của AdaBoost, cải thiện
khả năng học các lớp phân loại tăng nhằm giảm tỉ lệ lỗi. Jiang và Loe (2003) đề
xuất S-AdaBoost, một biến thể của AdaBoost, xử lý trong việc phát hiện mô hình
và phân loại. Rowley et al.(1996) đã thực hiện các nghiên cứu quan trọng nhất
trong số tất cả các phương pháp nhận diện khuôn mặt dựa trên các mạng nơ-ron.
Họ sử dụng một mạng lưới nơ-ron đa lớp để học mô hình khuôn mặt và non-face
từ các bộ hình ảnh về khuôn mặt và non-face. Một nhược điểm của phương pháp
của họ là chỉ phải đối mặt thẳng đứng phía trước có thể được phát hiện. Mặc dù
Rowley et .al. cải tiến phương thức để có thể phát hiện hình ảnh khuôn mặt xoay,
tuy nhiên kết quả không tốt vì tỉ lệ nhận dạng khá thấp. Support Vector Machines
(SVMs) sử dụng cấu trúc giảm thiểu rủi ro để giảm thiểu trên ràng buộc của các
lỗi dự kiến tổng quát (Osuna et al, 1997, Shih và Liu, năm 2004). Những khó
GVHD: ThS. Nguyễn Hữu Thương
SVTH: Chu Hoàng Nhật & Hà Thị Minh Phương
13
khăn chính của SVMs là tính toán nhiều và yêu cầu bộ nhớ cao. Mô hình
Markov ẩn (HMMs) cho rằng dạng khuôn mặt và non-face có thể được mô tả
như là tham số ngẫu nhiên (Rabiner và Jung, 1993). Mục đích của huấn luyện
HMM là để ước tính các thông số thích hợp trong mô hình HMM để tối đa hóa
khả năng quan sát dữ liệu được huấn luyện. Schneiderman và Kanade (1998)
trình bày một lớp phân loại Bayes thuần, trong đó dự tính xác suất xuất hiện và
vị trí của một mô hình khuôn mặt ở quy mô nhiều. Tuy nhiên, việc thực hiện
phân loại Bayes thuần là thấp.Để giải quyết vấn đề này, Schneiderman (2004) đề
xuất một mạng Bayesian hạn chế để phát hiện đối tượng.Phương pháp này tìm
kiếm các cấu trúc của một phân loại dựa trên mạng Bayes trong không gian rộng
lớn của cấu trúc mạng có thể xảy ra
Phân loại
Đặc điểm
Nghiên cứu tiêu biểu
Facial features with edges
and lines
Herpers et al.
(1996) Song et al.
(2002)
Gray scale
Yang and Huang
(1994) Graf et al.
(1995)
Phương thức dựa trên Skin color and elliptical edges Huang and Trivedi (2004)
các đặc trưng
McKenna et al. (1998)
Naseem and Deriche
(2005)
Multiple facial features
Huang et al. (2004)
Wang and ertMariani (2000)
Elastic bunch graph matching Wiskott et al. (1997)
Phương thức dựa trên Snakes and templates
mẫu
Silhouettes
Phương
thức
dựa
trên
hình
ảnh
Học máy
GVHD: ThS. Nguyễn Hữu Thương
AdaBoost
Kwon and Lobo (1994)
Gunn and Nixon (1996)
Samal and Iyengar (1995)
FloatBoost
Viola and Jones (2001a;
2001b)
Lienhart and Maydt
(2002) Wang et al.
Li et al. (2002a; 2002b)
S-AdaBoost
Jiang and Loe (2003)
SVTH: Chu Hoàng Nhật & Hà Thị Minh Phương
14
AdaBoost and PCA
Zhang et al. (2004b)
AdaBoost with look-up-table
type weak classifiers
Wu et al. (2004)
AdaBoost with Gabor features Yang et al. (2004)
Multilayer neural networks
Mạng nơ-ron NN and Constrained
Generative
Model
SVM with polynomial kernel
Support
Vector
Machines
(SVM)
Các thuật toán
khác
Rowley et al. (1996;
1998) Curran et al.
(2005)
Féraud et al. (2001)
Osuna et al. (1997)
SVM with Orthogonal Fourier Terrillon et al. (2000)
and Mellin Moments (OFMM)
SVM with Discriminating
Feature Analysis
Shih and Liu (2004)
Hidden Markov Model
(HMM)
Rabiner and Jung (1993)
Naive Bayes classifier
Schneiderman and Kanade
(1998)
Restricted Bayesian network
Schneiderman (2004)
Face Probability Gradient
Ascent (FPGA)
Park et al. (2005)
Bảng 2: Các phương thức nhận dạng khuôn mặt và các nghiên cứu tiêu
biểu.
Trong khóa luận này, chúng tôi sẽ tiếp cận bài toán theo vết chuyển động
theo hướng kết hợp việc nhận dạng đối tượng và theo dõi đối tượng cụ thể là hai
đối tượng khuôn mặt (face) và người đi bộ (pedestrian) tiến hành nhận dạng đối
tượng (dectec) sau đó theo vết (track) và sau một khoảng thời gian sẽ tiến hành
nhận dạng đối tượng nhằm làm tăng hiệu quả theo vết; cải tiến số lượng đối
tượng theo vết cụ thể là cùng một thuật toán nhưng áp dụng cho các nhóm mẫu
(particle filter) khác nhau-mỗi nhóm tương ứng với một đối tượng được theo vết;
ngoài ra cải thiện tốc độ xử lý của thuật toán bằng kĩ thuật lập trình song song và
GVHD: ThS. Nguyễn Hữu Thương
SVTH: Chu Hoàng Nhật & Hà Thị Minh Phương
15
sử dụng thread tăng hiệu quả của thuật toán. Bên cạnh đó, chúng tôi tiến hành
đánh giá hiệu quả của các cải tiến bằng các dữ liệu lấy từ bài báo nghiên cứu có
tiếng (nhằm đảm bảo tính hợp lệ và tính đúng đắn của dữ liệu), các bộ dữ liệu có
các đặc trưng và độ phức tạp phong phú: dữ liệu “YouTube action” bao gồm các
video có cùng chung một số điểm như ngoại cảnh, cùng view quan sát…, độ
phức tạp của cơ sở dữ liệu: sự thay đổi lớn trong chuyển động camera, sự xuất
hiện đối tượng và đặt ra, quy mô đối tượng, quan điểm, nền lộn xộn, điều kiện
chiếu sáng, v.v; bộ dữ liệu “UCF Sports Action” liệu gồm các video ở độ phân
giải 720x480, mô tả các hoạt động thể thoa đặc trưng trong một loạt các ngoại
cảnh khác nhau…
#
Đối
tượng
bất kỳ
Khuôn
mặt
Người
đi bộ
Tên video
Số frame
v_jumping_01_04
201
v_jumping_02_03
201
v_jumping_02_04
201
v_jumping_03_01
201
jam1
199
jim2
199
ssm1
199
v_walk_dog_01_04
151
walk002
100
walk008
101
walk014
100
Bảng 3: Kết quả đánh giá sơ lược
Kết quả (%)
94.03
48.76
51.74
84.08
83.42
95.48
100
74.83
56
11.88
100
Trong các phần sau của bài luận văn được tổ chức như sau: mục ba giới
thiệu chung về cách tiếp cận chung của bài toán theo vết đối tượng, lý thuyết về
particle filter và các điểm cải tiến, mục bốn mô tả các database được sử dụng
trong thực nghiệm đánh giá hiệu quả của thuật toán và mục năm đưa ra kết quả
đáng giá thực nghiệm dựa trên các công thức đã được chứng minh trong các hội
nghị khoa học.
GVHD: ThS. Nguyễn Hữu Thương
SVTH: Chu Hoàng Nhật & Hà Thị Minh Phương
16
2. BÀI TOÁN THEO VẾT ĐỐI TƯỢNG:
2.1. Tổng quan về bài toán theo vết đối tượng:
Mục tiêu của bài toán theo vết đối tượng là xác định đối tượng thành phần cùng
với vị trí và động tác chuyển động tương ứng của chúng nhằm đưa ra những
quyết định điều khiển thích hợp.
Hầu hết khó khăn của bài toán theo vết đối tượng là do khả năng biến
động của ảnh video bởi vì các đối tượng theo vết thường là các đối tượng video.
Khi một đối tượng chuyển động qua một vùng quan sát trên khung hình, hình
ảnh về đối tượng có thể thay đổi rất nhiều. Sự thay đổi này đến từ 3 nguồn chính:
sự thay đổi tư thế đối tượng đích (như người đang đứng chuyển sang tư thế ngồi;
xe đang đi thẳng quẹo sang trái …) hay sự biến dạng của đối tượng đích, sự thay
đổi về độ sáng, và sự che khuất một phần hay toàn bộ đối tượng đích (như khi
hai người hay xe đi ngang qua nhau).
Mỗi phương pháp tiếp cận có các ưu nhược điểm riêng nhưng tổng quát
có thể chia ra thành hai hướng chủ yếu:
• Hướng top-bottom: xuất phát từ các quan sát, thực hiện rút trích, phân
đoạn các hình ảnh hay các khung hình đầu vào để tìm ra đối tượng cần
theo vết. Ví dụ, phương pháp theo vết dùng “Blod detection”
GVHD: ThS. Nguyễn Hữu Thương
SVTH: Chu Hoàng Nhật & Hà Thị Minh Phương
17
Hình 1: Phương pháp theo vết sử dụng “Blob detection”.
• Hướng bottom-up: cách tiếp cận này sử dụng các giả thuyết về đối
tượng và cố gắng kiểm tra chúng bằng cách sử dụng các dữ liệu có
được từ hình ảnh. Thông thường, phương pháp dựa trên mô hình
(model-based) hoặc phương pháp so khớp với mẫu (template
matching) thuộc nhóm này. Phương pháp sử dụng particle filter giới
thiệu trong khóa luận này cũng thuộc nhóm các phương pháp topdown. giải quyết bài toán một cách thuận chiều hơn bằng cách ước
lượng mức hợp lý (likelihood) của các giả thuyết cho trước dựa trên
GVHD: ThS. Nguyễn Hữu Thương
SVTH: Chu Hoàng Nhật & Hà Thị Minh Phương
18
quan sát thu được. Cụ thể hơn, đầu tiên, phát sinh ra một tập các giả
thuyết có thể có trong không gian trạng thái của hệ thống, sau đó sử
dụng quan sát để tính likelihood cho từng giả thuyết, các likelihood
này sẽ quyết định đến mức độ “tin cậy” của từng giả thuyết (thường
được biểu thị bằng các trọng số). Cuối cùng tổng hợp tập các giả
thuyết-trọng số để cho ước lượng trạng thái của hệ thống.
2.2. Cách tiếp cận chung của bài toán theo vết đối tượng:
Đối tượng theo vết có thể chia thành ba nhóm đối tượng chính:
• Nhóm các đối tượng riêng biệt có cácmột tập đặc tính phân biệtchung
như xe hơi, người, khuôn mặt.
• Nhóm các đối tượng riêng biệt kết hợp với một thuộc tính cụ thể như
xe ô tô chạy, người đi bộ.
• Nhóm các đối tượng khác biệt nhưng có chung một thuộc tính cụ thể
như các đối tượng di chuyển.
Thuật toán theo vết đối tượng thực chất làm tìm một vùng ảnh di chuyển từ
frame khung hình này sang khung hình frame khác như thế nào nên mỗi nhóm
đối tượng sẽ có các đặc điểm riêng nhưng tống quát ta có các bước chính như
sau:
• Thứ nhất, ta cần xây dựng một “reference model” để mô tả cho đối
tượng cần theo vết.
• Sau đó trên mỗi input framekhung hình đầu vào (input frame), dựa
trên các hàm thực thi so sánh (similarity measure) thuật toán tìm
(localize) vùng nào mà gần giống với “mô hình tham chiếu - reference
model” nhất.
2.2.1. Mô hình tham chiếu (Reference model):
Mô hình tham chiếu (reference model) là mô hình mô tả các thông tin về “vẻ bề
ngoài” của đối tượng cần theo vết. Để xây dựng mô hình tham chiếu cho đối
tượng, cách thường dùng nhất trong các ứng dụng theo vết đối tượng là dùng mô
hình màu (color-model) bên cạnh các đặc trưng về đường biên (contour), chuyển
động tuy nhiên có một số vấn đề đặt ra:
GVHD: ThS. Nguyễn Hữu Thương
SVTH: Chu Hoàng Nhật & Hà Thị Minh Phương
19
• Hệ màu nào được dùng? RGB hay HSV, ... Lưu ý rằng khi chúng ta
dùng mô hình màu để mô hình tham chiếu có nghĩa là chúng ta đã chịu
thêm một giả sử là chúng ta chỉ theo vết được các đối tượng trên ảnh
màu chứ ko phải là ảnh bất kì. Ngoài ra, cũng cần chọn kĩ hệ màu vì
nó rất nhạy cảm với độ sáng, khung cảnh. Hiện tại trong ứng dụng thử
nghiệm đang sử dụng với hệ màu HSV
• Mô hình phân bố (distribution) như thế nào? Có nhiều cách để mô
hình phân bố (distribution) như Gaussian, hoặc Mixture Gaussian,
hoặc chỉ đơn giản như histogram. Trong ứng dụng thử nghiệm đang sử
dụng histogram.
2.2.2. Hàm thực thi sự so sánh (similarity measure):
Để so sánh giữa đối tượng mô hình tham chiếuđích (target object) hay đối
tượng cần theo vết và mô hình tham chiếu (candidate object reference model)
trongcủa mỗi khung hình đầu vào (input frame), chúng ta phải cần phải có một
hàm tính toán mô tả sự gần nhau/giống nhau (similarity measure). Hàm này có
nhiệm vụ sẽ tính toán mức độ tượng đồng/giống nhau giữa hai đối tượng trên từ
đó xác định được trạng thái của đối tượng cần theo vết. Ví dụ, hàm SSD (Sum of
Squared Differences) được dùng trong trường hợp thỏa điều kiện độ sáng không
đổi nghĩa là giá trị ánh sáng của các điểm ảnh không thay đổi từ khung hình này
sang khung hình khác; hàm SAD (Sum of Absolute Differences).
2.3. Cơ sở toán học:
2.3.1. Mô hình Markow ẩn (Hidden Markow models-HMM):
Mô hình Markow ẩn là mô hình thống kê trong đó hệ thống được mô hình hóa
được cho là một quá trình Markov với các tham số không biết trước và nhiệm vụ
là xác định các tham số ẩn từ các tham số quan sát được, dựa trên sự thừa nhận
này. Các tham số của mô hình được rút ra sau đó có thể sử dụng để thực hiện các
phân tích kế tiếp, ví dụ cho các ứng dụng nhận dạng.
GVHD: ThS. Nguyễn Hữu Thương
SVTH: Chu Hoàng Nhật & Hà Thị Minh Phương
20
Trong một mô hình Markov điển hình, trạng thái được quan sát trực tiếp bởi
người quan sát, và vì vậy các xác suất chuyển tiếp trạng thái là các tham số duy
nhất. Mô hình Markov ẩn thêm vào các đầu ra: mỗi trạng thái có xác suất phân
bổ trên các biểu hiện đầu ra có thể. Vì vậy, nhìn vào dãy của các biểu hiện được
sinh ra bởi HMM không trực tiếp chỉ ra dãy các trạng thái.
Hình 2: Các chuyển tiếp trạng thái trong mô hình Markov ẩn
2.3.2. Ước lượng bayes:
2.3.2.1.
Định nghĩa theo khía cạnh toán học:
Định lý Bayes cho phép tính xác suất xảy ra của một sự kiện ngẫu nhiên A khi
biết sự kiện liên quan B đã xảy ra. Xác suất này được ký hiệu là P(A|B), và đọc
là "xác suất của A nếu có B". Đại lượng này được gọi xác suất có điều kiện hay
xác suất hậu nghiệm vì nó được rút ra từ giá trị được cho của B hoặc phụ thuộc
vào giá trị đó.
Theo định lí Bayes, xác suất xảy ra A khi biết B sẽ phụ thuộc vào 3 yếu tố:
• Xác suất xảy ra A của riêng A, không quan tâm đến B. Kí hiệu là
P(A) và đọc là “xác suất của A”. Đây được gọi là xác suất biên
duyên hay xác suất tiên nghiệm, nó là "tiên nghiệm" theo nghĩa
rằng nó không quan tâm đến bất kỳ thông tin nào về B.
• Xác suất xảy ra B của riêng B, không quan tâm đến A. Kí hiệu là
P(B) và đọc là "xác suất của B". Đại lượng này còn gọi là hằng số
GVHD: ThS. Nguyễn Hữu Thương
SVTH: Chu Hoàng Nhật & Hà Thị Minh Phương
21
chuẩn hóa (normalising constant), vì nó luôn giống nhau, không
phụ thuộc vào sự kiện A đang muốn biết.
• Xác suất xảy ra B khi biết A xảy ra. Kí hiệu là P(B|A) và đọc là
"xác suất của B nếu có A". Đại lượng này gọi là khả năng
(likelihood) xảy ra B khi biết A đã xảy ra.
Khi biết ba đại lượng này, xác suất của A khi biết B cho bởi công thức
eq. 1
2.3.2.2.
Định nghĩa theo khía cạnh trạng thái hệ thống:
Xét một hệ thống động thỏa các giả định về mô hình Markov bậc nhất, trước tiên
ta cần thống nhất một số kí hiệu sau:
Đối với trạng thái (mục tiêu cần xác định):
• : trạng thái của đối tượng ở thời điểm k. Các đại lượng vật lý đại
diện cho trạng thái của đối tượng thường là tọa độ x, y của khung
hình chữ nhật chứa đối tượng cần theo vết
• : chuỗi các trạng thái của đối tượng từ thời điểm ban đầu đến thời
điểm k.
Đối với quá trình quan sát (được xác định dựa trên các thông tin từ video):
• : các quan sát tại thời điểm k.
• : chuỗi các quan sát từ thời điểm ban đầu đến thời điểm k.
Mục tiêu của phương pháp Bayes là ước lượng trạng thái x k dựa trên
chuỗi quan sát Zk . Để ước lượng trạng thái xk cho một hệ thống, ta cần có 2 mô
hình:
Mô hình động: mô hình sự tiến hóa của trạng thái theo thời gian:
eq. 2
với là vectơ nhiễu (ngẫu nhiên), xác suất chuyển trạng thái tính được từ mô
hình này.
Mô hình quan sát: mô tả mối quan hệ giữa trạng thái quan sát và trạng
thái ở cùng thời điểm:
eq. 3
với
là vectơ nhiễu (ngẫu nhiên), mô hình này được sử dụng để tính
likelihood.
GVHD: ThS. Nguyễn Hữu Thương
SVTH: Chu Hoàng Nhật & Hà Thị Minh Phương
22
Tại một thời điểm k bất kỳ, hàm phân phối xác suất hậu nghiệm được cho
bởi quy tắc Bayes như sau
eq. 4
Giải pháp Bayes cho rằng chúng ta có thể đạt được mật độ xác suất hậu
nghiệm (posterior density) qua hai bước:
Dự đoán:
eq. 5
Cập nhật:
eq. 6
Tuy nhiên ước lượng này chỉ mang tính lý thuyết vì không có phương
pháp tổng quát để tính tích phân trong công thức (eq.4) và (eq.5) trong trường
hợp liên tục và nhiều chiều. Vì lí do đó, các phương pháp lọc phi tuyến như lọc
Kalman, lọc Kalman mở rộng, lọc tổng hợp Gauss, … ra đời nhằm mục đích xấp
xỉ hàm mật độ hậu nghiệm. Nhưng nếu các phương pháp lọc Kalman, lọc
Kalman mở rộng, lọc tổng hợp Gauss, … dựa vào giải tích, tìm kiếm lời giải cho
các phương trình (eq.4) và (eq.5) bằng một hay nhiều phương trình khác với giả
sử rằng môi trường thỏa mãn một số yêu cầu, còn phương pháp Monte Carlo lại
dựa vào sự mô phỏng và xấp xỉ các hàm phân phối và các tích phân bằng một tập
các dữ liệu được sinh ra bằng chính hàm phân phối.
2.3.3. Phương pháp Monte Carlo:
Trong phần này, chúng ta sẽ xem xét một trong những nền tảng lý thuyết quan
trọng nhất – phương pháp Monte Carlo – của lọc Particle. Không mất tính tổng
quát, ta xem xét bài toán tính tích phân trong đó dữ liệu rất lớn, nhiều chiều
(High-Dimensional Intergral) như sau
eq. 7
Trong đó, là một hàm- khả tích. Giả sử ta có thể sinh ngẫu nhiên N mẫu
ngẫu nhiên phân phối độc lập và đồng nhất từ phân phối xác suất . Như vậy,
phân phối xác suất có thể được ước lượng như sau
eq. 8
GVHD: ThS. Nguyễn Hữu Thương
SVTH: Chu Hoàng Nhật & Hà Thị Minh Phương
23
Trong đó, ký hiệu hàm delta-Dirac có tâm tại . Vậy, có thể được xấp xỉ
bằng tích phân Monte Carlo (Monte Carlo Integration) như sau
eq. 9
Biểu thức ướng lượng trong (eq.8) hợp lệ vì theo luật mạnh số lớn, nếu
phương sai của thỏa thì phương sai của được cho bởi Vậy ta có
eq. 10
Trong đó
là ký hiệu của “hội tụ hầu chắc chắn” (Almost Sure
Convergence). Hơn nữa, vì (hữu hạn) nên định lý giới hạn trung tâm được thỏa,
nghĩa là
eq. 11
Trong đó ký hiệu cho hội tụ trong phân phối xác suất. Từ những lập luận
trên, suy ra dùng tập các mẫu ngẫu nhiên có thể dễ dàng ước lượng được. Dựa
vào ước lượng này, kết hợp với phương trình (eq.10), ta cũng có thể dễ dàng tính
được mức độ hội tụ của phép ước lượng, hay mức độ lỗi của nó.
Không những thế, điểm mạnh của phương pháp tích phân Monte Carlo
còn nằm ở chỗ nó không phụ thuộc vào số chiều của dữ liệu. Thật vậy, nếu ta
phải tính (eq.6) bằng phương pháp xấp xỉ tích phân Riemann, trong đó không
gian trạng thái được mô hình hóa bằng một phương trình giải tích, độ chính xác
của phép xấp xỉ sẽ là đối với tích phân trên miền dữ liệu có số chiều là , nghĩa là
mức độ hội tụ của phép xấp xỉ sẽ là đối với tích phân trên miền dữ liệu có số
chiều là , nghĩa là mức độ hội tụ của phép xấp xỉ càng giảm khi số chiều của
phép tính tích phân càng tăng. Trong khi đó, áp dụng phương pháp tích phân
Monte Carlo, phương pháp mô phỏng ngẫu nhiên không gian trạng thái từ phân
phối xác suất của nó, độ chính xác của phép xấp xỉ là và không phụ thuộc vào số
chiều của dữ liệu. Điều này có nghĩa là, phương pháp tích phân Monte Carlo độc
lập với số chiều của phép tính tích phân.
Tuy nhiên, một vấn đề gặp phải khi áp dụng phương pháp tích phân
Monte Carlo chính là làm sao để có thể tạo ra một tập các mẫu ngẫu nhiên từ
GVHD: ThS. Nguyễn Hữu Thương
SVTH: Chu Hoàng Nhật & Hà Thị Minh Phương
24
phân phối xác suất đích bất kỳ một cách hiệu quả. Tuy nhiên thường không có
cách nào để sinh ra tập mẫu này một cách trực tiếp từ phân phối xác suất đích vì
trong trường hợp tổng quát, thường là đa biến và không có một dạng chuẩn nhất
định mà chúng ta có thể biết trước (dạng của có thể biến đổi theo thời gian). Do
đó, ta phải dùng phương pháp gián tiếp để sinh ra tập các mẫu dữ liệu này. Vấn
đề này sẽ được đề cập chi tiết trong phần
2.4. Particle filter:
2.4.1. Định nghĩa:
Theo vết đối tượng bằng phương pháp particle filter là phương pháp dựa trên xác
suất, sử dụng các phương trình dự đoán (prediction) để dự đoán trạng thái của
đối tượng và phương trình cập nhật (updation) để hiệu chỉnh lại các dự đoán
trước đó về trạng thái của đối tượng dựa trên những tri thức thu thập được từ các
quan sát (observation) trên đối tượng.
Hình 3: Sơ đồ giải thích quá trình từ tín hiệu thực tế tới ước lượng thuật
toán.
Phương pháp theo vết đối tượng dùng particle filter sử dụng mô hình động,
cùng với các quan sát trực quan, thiết lập các ngẫu nhiên theo thời gian; áp dụng
GVHD: ThS. Nguyễn Hữu Thương
SVTH: Chu Hoàng Nhật & Hà Thị Minh Phương
25
mô hình xác suất dựa hình dạng và chuyển động của đối tượng để phân tích các
dòng dữ liệu từ video.
Phương pháp này dùng ước lượng Bayes hồi quy làm giải pháp lý thuyết, và
ý tưởng của phương pháp Monte Carlo để xấp xỉ cho giải pháp lý thuyết này.
Cũng như các phương pháp lọc phi tuyến khác, lọc particle cũng tính xấp xỉ hàm
mật độ hậu nghiệm tuy nhiên không như các phương pháp khác dựa vào giải
tích, cố gắng tìm một lời giải cho các phương trình trên thông qua một hay nhiều
phương trình khác, thì lọc particle lại sử dụng một tập lớn các mẫu dữ liệu được
phát sinh từ bời chính các hàm phân phối trong các tích phân này.
Hình 4: Mô hình xác suất của particle filter.
2.4.2. Cơ sở lý thuyết:
Kỹ thuật theo vết đối tượng này dựa trên các trạng thái trước đó của chuyển động
để dự đoán vị trí trong khung hình tiếp theo. Để phân tích kỹ thuật số, quá trình
tuyên truyền được xác định tại thời gian rời rạc.Các thuật ngữ sau được sử dụng
trong thuật toán particle filter:
GVHD: ThS. Nguyễn Hữu Thương
SVTH: Chu Hoàng Nhật & Hà Thị Minh Phương