Tải bản đầy đủ (.pdf) (8 trang)

lọc particle dựa trên màu ứng dụng vào hệ thống theo dõi giao thông

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (308.24 KB, 8 trang )

Tạp chí BCVT & CNTT kỳ 3 10/2007

- 52 -

Abstract: Object tracking in computer vision has been
researched for many years, but it’s still considered as an
open problem up to now. Recently, there has been a
tracking method whose efficiency has been proved in many
pieces of research in the world, that is Particle filter using
color-based observation model. This paper takes the idea
proposed in [8] for the purpose of building some most
basic functions of a traffic surveillance system which only
performs in motorcycle lane, improving some experimental
results attained in [8], and introducing the ability to
recognize the motorbikes driven in wrong way.
I. GIỚI THIỆU
Theo vết đối tượng là thành phần chủ yếu trong các
hệ thống theo dõi (surveillance), dẫn đường
(guidance), phòng tránh ách tắc (obstacle avoidance
system), hay các ứng dụng tương tác người – máy
thông minh (intelligent human-computer interactive
system). Nhiệm vụ chủ yếu của giai đoạn này là xác
định số lượng các đố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. Thông
thường các phương pháp theo vết được chia làm hai
loại chính: bottom-up và top-down [6]:
Bottom-up: xuất phát từ các quan sát, thực hiện rút
trích, phân đoạn để tìm ra đối tượng cần theo vết.
Top-down: 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 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.
Theo vết đối tượng sử dụng lọc Particle thuộc vào
loại phương pháp top-down. Giống như các phương
pháp lọc phi tuyến khác, lọc Particle cũng lấy ước
lượng Bayes hồi quy làm giải pháp lý thuyết, nhưng nó
lại sử dụng ý tưởng của phương pháp Monte Carlo để
xấp xỉ cho giải pháp lý thuyết này. Cụ thể, lọc Particle
sử dụng một tập lớn các mẫu - mỗi mẫu được ví như
một particle – rút ra từ một hàm mật độ đề xuất để
biểu diễn cho hàm mật độ hậu nghiệm, sau đó sử dụng
các giá trị mật độ hậu nghiệm này để đưa ra ước lượng
trạng thái hiện thời của hệ thống. Những điểm mạnh
khiến cho lọc Particle được xem là một công cụ ưu việt
cho các bài toán lọc phi tuyến hiện nay đó là: khả năng
giải quyết các bài toán lọc tổng quát mà không đòi hỏi
bất cứ giả định nào về hệ thống, tốc độ hội tụ không
phụ thuộc vào số thành phần của vectơ trạng thái, có
khả năng mở rộng để thực hiện trong môi trường tính
toán toán song song, ngoài ra với sức mạnh của máy
tính, người ta có thể gia tăng độ chính xác của phép
xấp xỉ bằng cách tăng số lượng các điểm mẫu.
Trong bối cảnh bài toán theo vết các đối tượng xe

lưu thông bằng thị giác máy tính, chúng tôi sử dụng
công cụ lọc Particle với mô hình quan sát dựa trên
màu, vì màu sắc là một đặc trưng trực quan dễ rút
trích và chi phí tính toán thấp, hơn nữa nó lại bất biến
với phép biến đổi tỉ lệ - bắt gặp trong bối cảnh của ứng
dụng theo dõi giao thông.
Một trong những điểm yếu của lọc Particle là khả
năng duy trì tính đa mô hình kém, mà trong một hệ
Lọc Particle dựa trên màu ứng dụng vào
hệ thống theo dõi giao thông
Applying Color-based Particle Filter to Traffic Surveillance System
Lê Hoài Bắc, Nguyễn Phi Vũ
Tạp chí BCVT & CNTT kỳ 3 10/2007
- 53 -
thống theo dõi giao thông, yêu cầu theo vết cùng lúc
nhiều đối tượng xe trong vùng quan sát là không thể
tránh khỏi, chính vì thế, ở đây chúng tôi sử dụng một
phiên bản cải tiến của lọc Particle - lọc Particle đa mô
hình, nhằm khắc phục điểm yếu này. Phương pháp này
đã được đề xuất và thử nghiệm trong [5], [7], [8] và đã
chứng tỏ được tính hiệu quả của nó.
Trong những phần còn lại, bài báo sẽ tổ chức như
sau: phần II là sơ lược về nền tảng lý thuyết của lọc
Particle, phần III nói về phiên bản lọc Particle đa mô
hình, phần IV là ứng dụng lọc Particle đa mô hình vào
hệ thống theo dõi giao thông, phần V trình bày các kết
quả thực nghiệm và cuối cùng là kết luận.
II. LỌC PARTICLE
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:
x
k
: trạng thái của hệ thống ở thời điểm k.
z
k
: quan sát ở thời điểm k.
X
k
: chuỗi các trạng thái của hệ thống từ thời điểm
ban đầu đến thời điểm k.
Z
k
: chuỗi các quan sát từ thời điểm ban đầu đến thời
điểm k.
Để ước lượng trạng thái cho một hệ thống động, ta
cần có 2 mô hình:
Mô hình động: mô tả sự tiến hoá của trạng thái theo
thời gian:

111
(,)
kkkk−−−
=xfxv
(1)
với v
k-1
là vectơ nhiễu (ngẫu nhiên), xác suất chuyển
tiếp
1

(|)
kk
p

xx
tính được từ mô hình này.

Mô hình quan sát: mô tả mối quan hệ giữa quan sát
và trạng thái ở cùng thời điểm:

(,)
kkkk
=zhxw
(2)
với
k
w là vectơ nhiễu (ngẫu nhiên), mô hình này
được sử dụng để tính likelihood
(|)
kk
p zx
.
Giải pháp Bayes cho rằng chúng ta có thể đạt được
mật độ hậu nghiệm (posterior density) p(x
k
|Z
k
) qua
hai bước:
Dự đoán:


11111
(|)(|)(|)
kkkkkkk
pppd
−−−−−
=

xZxxxZx
(3)
Cập nhật:

(|)
kk
p xZ
1
1
(|)(|)
(|)(|)
kkkk
kkkkk
pp
ppd


=

zxxZ
zxxZx
(4)


Chúng ta chỉ có thể áp dụng giải pháp Bayes trong
trường hợp không gian trạng thái rời rạc và hữu hạn.
Ngoài trường hợp này thì đây chỉ là giải pháp lý thuyết
vì không có phương pháp tổng quát nào để tính các
tích phân trong (3) và (4) 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
ra đời (lọc Kalman mở rộng, lọc unscented Kalman,
xấp xỉ mắt lưới, lọc tổng Gauss, … [3], [12]) nhằm
mục đích xấp xỉ cho giải pháp lí thuyết này. Cũng
không nằm ngoài mục tiêu trên, lọc Particle xấp xỉ hàm
mật độ hậu nghiệm bằng một tập lớn các mẫu phát
sinh từ một hàm mật độ đề xuất (proposal density):
1
~(|,)
ii
kkkk
q

xxxz
. Mỗi mẫu sẽ được gắn với một
trọng số được cập nhật một cách hồi quy như sau:

1
1
1
(|)(|)
(|,)
iii
ii

kkkk
kk
ii
kkk
pp
ww
q




zxxx
xxz
%
(5)
với
1
i
k
w

là trọng số đã được chuẩn hoá ở thời điểm
k-1:
1
1
1
1
i
i
k

k
N
j
k
j
w
w
w



=
=

%
%

i
k
w
%
là trọng số chưa được
chuẩn hoá ở thời điểm k. Và như vậy, hàm mật độ hậu
nghiệm sẽ được xấp xỉ như sau:

1
(|)()
N
ii
kkkkk

i
pwδ
=
≈−

xZxx
(6)
với
δ
(.) là hàm Delta Dirac, và ước lượng trạng
thái của hệ thống ở thời điểm k sẽ là:

k
[|]
k
Ε xZ

1
N
ii
kk
i
w
=

x
(7)

Những gì vừa trình bày trên đây là nội dung chính
của phương pháp lấy mẫu tín nhiệm theo chuỗi

(Sequential Importance Sampling - SIS), đây là phiên
bản đơn giản nhất của lọc Particle, nội dung thuật toán
SIS được trình bày trong bảng 1.
Tạp chí BCVT & CNTT kỳ 3 10/2007

- 54 -

Bảng 1. Thuật toán SIS.
Có một vấn đề nảy sinh trong thuật toán SIS là sau
một số hữu hạn bước lặp đệ quy, giá trị các trọng số
mẫu bị suy giảm trầm trọng xuống mức gần bằng
không, ngoại trừ một mẫu có trọng số gần bằng một,
đây được gọi là hiện tượng thoái hoá mẫu, khi hiện
tượng này xảy ra, mọi nỗ lực tính toán sẽ trở nên vô
nghĩa vì chúng ta đang sử dụng một tập mẫu gồm
những mẫu có đóng góp không đáng kể vào biểu diễn
của mật độ hậu nghiệm (xem [2] để biết thêm chi tiết).
Để khắc phục hiện tượng này, chúng ta cần đưa vào
thuật toán SIS bước tái lấy mẫu (Resampling) mỗi khi
quan sát thấy hiện tượng thoái hoá mẫu xảy ra (thông
qua kích thước mẫu hiệu dụng
2
1
1
ˆ
()
eff
N
i
k

i
N
w
=
=

).
Bước này sẽ làm nhiệm vụ loại bỏ những mẫu có trọng
số không đáng kể và nhân bản những mẫu có trọng số
cao. Sau bước tái lấy mẫu, các trọng số mẫu sẽ được
đồng đều hoá = 1/N (xem chi tiết trong [11]). Có thể
hình thức hoá thủ tục tái lấy mẫu như sau:

Bảng 2 trình bày phiên bản thuật toán lọc Particle
thông dụng.

Bảng 2. Thuật toán lọc Particle.
III. LỌC PARTICLE ĐA MÔ HÌNH
Gọi {,,,,}
kkkkkk
PMXWC=∏ là tập biểu diễn
particle cho mật độ hậu nghiệm đích, với các thông số
ở thời điểm k: M
k
là số mô hình con,
k

là tập trọng
số kết hợp,
k

X
là tập particle,
k
W
là tập trọng số ứng
với particle,
k
C
là tập chỉ số particle với ý nghĩa
()i
k
Cm=
nếu particle thứ i thuộc thành phần thứ m.
Hàm mật độ hậu nghiệm đích được xấp xỉ bằng tổng
có trọng số các hàm mật độ hậu nghiệm của mỗi mô
hình con:

,
1
(|)(|)
k
M
m
kkmkkk
m
ppπ
=
=

xZxZ

(8)
với
,mk
π
là trọng số kết hợp của mô hình con thứ m
ở thời điểm k.
Các trọng số kết hợp của mỗi mô hình con sẽ được
cập nhật ở mỗi thời điểm một cách hồi quy như sau:

,1
,
,1
1
k
m
n
i
mkk
iI
mk
M
i
nkk
niI
w
w
π
π
π




=∈
=

∑∑
%
%
(9)
với
i
k
w
%
là trọng số mẫu chưa chuẩn hoá.
Như trên ta thấy mỗi mô hình con sẽ được áp dụng
lọc Particle một cách độc lập, sau đó chúng sẽ kết hợp
Tạp chí BCVT & CNTT kỳ 3 10/2007
- 55 -
với nhau thông qua trọng số kết hợp để cho ra mật độ
hậu nghiệm đích.
IV. ỨNG DỤNG LỌC PARTICLE VÀO HỆ
THỐNG THEO DÕI GIAO THÔNG
1. Mô hình động
Vectơ trạng thái của mỗi mô hình con có dạng x
k
=
(x
k
, y

k
) là toạ độ Decartes (liên tục) của mỗi xe trên
ảnh tại thời điểm k. Mô hình động được mô tả qua
từng thành phần của trạng thái:

1111
f(,)
xx
kkkkk
xxvxv
−−−−
==+


1111
f(,)
yy
kkkkk
yyvyv
−−−−
==+
(10)
với các nhiễu
1
x
k
v


1

y
k
v

là các biến ngẫu nhiên
tuân theo phân phối chuẩn lần lượt là
2
(0,)
x
δΝ

2
(0,)
y
δΝ
. Như vậy, hàm động của vectơ trạng thái có
thể viết như sau:

1111
f(,)
kkkkk−−−−
==+xxvxv
(11)
với
1k−
v
là vectơ ngẫu nhiên tuân theo phân phối
chuẩn
2
(0,)Ν∆


2
∆ là hiệp phương sai của 2 biến
ngẫu nhiên
1k
x


1k
y

.
Theo [10], vectơ trạng thái được định nghĩa bổ sung
thêm 2 thành phần w, h lần lượt là chiều rộng và chiều
cao của vùng ứng viên, đây là cách định nghĩa tổng
quát và lý tưởng vì sẽ giúp nắm bắt được chính xác
vùng ứng viên. Song, ở đây chúng tôi muốn giảm chi
phí tính toán và cho rằng chiều cao và chiều rộng của
vùng ứng viên có thể suy ra một cách xấp xỉ dựa vào
mô hình chiếu phối cảnh (do vị trí đặt máy quay là cố
định nên ta có thể dễ dàng xấp xỉ được điều này).
2. Mô hình quan sát
Bài báo này sử dụng mô hình quan sát dựa trên màu,
mô hình quan sát này đã cho thấy được tính hiệu quả
của nó trong nhiều hệ thống theo vết bằng thị giác máy
tính và nhiều công trình nghiên cứu ([4], [6], [7],
[10]), xin trình bày ngắn gọn lại như sau (xem chi tiết
trong [11]):
Sử dụng khoảng cách Bhattachayya để tính “khoảng
cách” giữa mô hình màu tham khảo

**
01,...,
{(;)}
nN
kn
=
Kx@
và mô hình màu ứng viên
1,...,
(){(;)}
nNkk
kn
=
Kxx@
:

1/2
**
0
1
[,()]=1(;)(;)
N
kk
n
knknξ
=






KKxxx
(12)
Mô hình ứng viên và mô hình tham khảo sẽ được
chia thành hai vùng con (trên và dưới, hình1) để tăng
độ chính xác. Sau đó ta sẽ tính được likelihood của
mô hình ứng viên như sau:

2
2*
1
[,()]
(|)
jj
k
j
kk
pe
λξ
=



KKx
zx
(13)

Hình 1. Mô hình ứng viên
3. Phát hiện đối tượng chuyển động
Các đối tượng chuyển động quan tâm ở đây là các

xe máy đi trong vùng quan sát. Phương pháp phát hiện
chuyển động được lựa chọn trong trường hợp này là
trừ nền. Trong ngữ cảnh bài toán theo dõi giao thông
thời gian thực thì yếu tố tốc độ xử được đặt lên rất cao,
vì vậy đây là một lựa chọn thích hợp, vì phương pháp
này cho kết quả khá tốt mà độ phức tạp không cao.
a) Học nền
Sử dụng ý tưởng trong [9], phương pháp học nền sẽ
tạo ra một chuỗi n-1 mặt nạ M
i
(x) (i = 2,…, n) ứng với
n-1 cặp frame ảnh liên tiếp, mỗi mặt nạ M
i
(x) sẽ xác
định xem điểm x trên ảnh tại i-1 có phải là điểm
chuyển động không bằng cách trừ hai frame ảnh liên
tiếp I
i
và I
i-1
này. Sau đó, các điểm ảnh trên ảnh nền B
sẽ được cập nhật dựa trên chuỗi mặt nạ M
i
(x). Thuật
toán học nền được trình bày trong bảng 3.
b) Phát hiện đối tượng
Sau khi đã có được ảnh nền, ta có thể xác định điểm
thuộc đối tượng chuyển động bằng cách so sánh sự
chênh lệch màu sắc giữa điểm đó và điểm cùng vị trí
trên ảnh nền. Kết hợp với một số kỹ thuật heuristic

như: loại bỏ những vùng có mật độ điểm chuyển động
Tạp chí BCVT & CNTT kỳ 3 10/2007

- 56 -
thưa thớt, tách các đối tượng bị dính nhau do bóng,
điều chỉnh khung detect cho sát với kích thước thực
của đối tượng, cùng với thuật toán “vết dầu loang” để
tìm các vùng liên thông, cuối cùng có được danh sách
các đối tượng xe chuyển động, nội dung của thuật toán
phát hiện đối tượng chuyển động được trình bày trong
bảng 4.

Bảng 3. Thuật toán học nền.

Bảng 4. Thuật toán phát hiện đối tượng chuyển động.
4. Theo vết đối tượng
Việc theo vết mỗi đối tượng xe chuyển động được
xem là một mô hình con và sẽ được áp dụng lọc
Particle một cách độc lập, sau đó chúng sẽ được theo
dõi mức độ đóng góp vào phân phối đích qua các trọng
số kết hợp.
Chúng tôi đưa ra một thuật toán nhằm kết hợp hai
công cụ phát hiện đối tượng chuyển động và lọc
Particle đa mô hình để hình thành nên một thuật toán
theo vết hoàn chỉnh, tạm gọi là thuật toán Tracking.
Thuật toán Tracking ở đây sẽ lấy kết quả phát hiện đối
tượng chuyển động làm tiền đề cho lọc Particle đa mô
hình. Trong suốt quá trình theo vết, một đối tượng xe
lưu thông qua vùng quan sát sẽ chỉ được phát hiện một
lần duy nhất vào lúc bắt đầu đi vào vùng này, tức là

thuật toán Detect chỉ cần được thực hiện trên một vùng
nhỏ ngay vạch xuất phát của vùng quan sát - gọi là
“vùng xuất phát” - để phát hiện các đối tượng mới đi
vào vùng quan sát, và như vậy thuật toán Detect sẽ
không cần quan tâm đến các đối tượng đã đi ra (một
phần hay hoàn toàn) khỏi “vùng xuất phát” này, nhiệm
vụ đó sẽ dành cho lọc Particle. Thuật toán Detect sẽ
được hiệu chỉnh lại đôi chút trong trường hợp chỉ áp
dụng cho “vùng xuất phát”, tên gọi được đổi thành
DetectInBeginningArea.
Thuật toán Tracking được trình bày trong bảng 5,
với P
k
được định nghĩa trong phần III và NOList
k

danh sách các đối tượng mới đi vào “vùng xuất phát”
ở thời điểm k.
Với thuật toán tracking trên đây, ngoài khả năng
theo vết đối tượng, chúng ta còn có khả năng phát hiện
các đối tượng di chuyển ngược chiều. Các đối tượng di
chuyển ngược chiều sau khi đi ngang qua “vùng xuất
phát” sẽ biến mất khỏi vùng quan sát, và như vậy vùng
ứng viên trên ảnh của đối tượng này sẽ có likelihood (tỉ
lệ thuận với trọng số kết hợp) giảm rất nhanh trong
khoảng thời gian chỉ vài frame ảnh (
,mkThreshold
ππ≤

Threshold

kk≤ ). Nắm bắt được tính chất này ta có thể
phát hiện các đối tượng di chuyển ngược chiều.

×