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

Nghiên cứu và xây dựng module theo dõi tự động các đối tượng ảnh

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 (2.2 MB, 89 trang )

..

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
.............................................

ĐỖ NGUYỄN TRUNG

NGHIÊN CỨU VÀ XÂY DỰNG MODULE THEO DÕI TỰ
ĐỘNG CÁC ĐỐI TƯỢNG ẢNH
CHUYÊN NGÀNH ĐO LƯỜNG & CÁC HỆ THỐNG ĐIỀU KHIỂN

LUẬN VĂN THẠC SĨ KHOA HỌC
CHUYÊN NGÀNH ĐO LƯỜNG & CÁC HỆ THỐNG ĐIỀU KHIỂN

NGƯỜI HƯỚNG DẪN KHOA HỌC :
TS. TRẦN THỊ THANH HẢI

HÀ NỘI - 2010


MỤC LỤC
Trang phụ bìa

Trang

Lời cam đoan
Danh mục các bảng
Danh mục các hình vẽ
Mở đầu
Chương I - Tổng quan về bài tốn theo dõi đối tượng ảnh


1.1. Mơ hình bài tốn

1

1.1.1. Định nghĩa bài toán

1

1.1.2. Phân loại bài toán

1

1.1.3. Các bước chính của bài tốn

1

1.1.4. Vai trị của bài tốn

2

1.2. Biểu diễn đối tượng

3

1.2.1. Hình dạng

4

1.2.2. Diện mạo


5

1.2.3. Trích chọn đặc trưng

6

1.3. Phát hiện đối tượng ảnh

8

1.4. Theo dõi đối tượng ảnh

12

1.4.1. Xây dựng mẫu chuyển động

12

1.4.2. Theo vết mean-shift và camshift

14


1.4.3. Xât dựng bộ ước lượng

16

1.5. Phân tích chuyển động

19


1.6. Kết luận

19

Chương II - Theo dõi đối tượng ảnh sử dụng bộ lọc Kalman
2.1. Khó khăn và giả thiết

21

2.1.1. Những khó khăn

21

2.1.2. Các giả thiết

24

2.2. Module theo dõi đối tượng ảnh sử dụng bộ lọc Kalman Filter

25

2.2.1. Phạm vi nghiên cứu

25

2.2.2. Sơ đồ khối module

25


2.3. Phương pháp trừ nền

27

2.3.1. Giới thiệu

27

2.3.2. Điều kiện thực hiện

28

2.3.3. Phát hiện chuyển động

28

2.3.4. Giải thuật codebook

29

2.3.5. Lọc bỏ nhiễu và liên kết thành phần liên thơng

31

2.4. Bộ lọc Kalman

32

2.4.1. Giới thiệu


32

2.4.2. Phương trình tốn học

33

2.4.2.1. Các phương trình trạng thái và phép đo

33


2.4.2.2. Các phương trình tính tốn của bộ lọc

34

2.4.2.3. Các phương trình xác suất của bộ lọc

36

2.4.3. Thuật tốn Kalman rời rạc

37

2.5. Gán quan sát – đối tượng

38

2.5.1. Biểu diễn đối tượng dựa vào màu sắc

39


2.5.2. Biểu diễn đối tượng dựa vào histogram

41

2.5.3. Thước đo độ tương tự

42

Chương III - Thiết kế và cài đặt
3.1. Môi trường thiết kế

44

3.2. OpenCV và các hàm xử lý

44

3.3. Module chương trình

45

3.4. Học và trừ nền theo giải thuật codebook

47

3.4.1. Lưu đồ thuật toán

47


3.4.2. Các hàm xử lý

49

3.4.3. Kết quả minh họa

50

3.5. Phát hiện đối tượng chuyển động

52

3.5.1. Lưu đồ thuật toán

52

3.5.2. Các hàm xử lý

53

3.6. Theo dõi đối tượng

54

3.6.1. Lưu đồ thuật toán

54


3.6.2. Các hàm xử lý


57

Chương IV - Thử nghiệm và đánh giá
4.1. Cơ sở dữ liệu thử nghiệm

60

4.2. Thước đo đánh giá kết quả

60

4.3. Thông số cài đặt

61

4.3.1. Thông số phục vụ xây dựng mơ hình nền

61

4.3.2. Thơng số xác định đối tượng chuyển động

62

4.3.3. Thông số khởi tạo bộ lọc Kalman

62

4.4. Kết quả thử nghiệm


63

4.4.1. Kết quả thử nghiệm trên video 1

63

4.4.2. Kết quả thử nghiệm trên video 2

65

4.4.2. Kết quả thử nghiệm trên video 3

68

4.4.2. Kết quả thử nghiệm trên video 4

69

4.5. Kết luận và kiến nghị

71

4.6.1. Những kết quả đạt được

72

4.6.2. Hướng phát triển

72



LỜI CAM ĐOAN
Tôi xin cam đoan bản luận văn cao học “Nghiên cứu và xây dựng module
theo dõi tự động các đối tượng ảnh” do tôi tự thực hiện dưới sự hướng dẫn của
Tiến sĩ Trần Thi Thanh Hải, không sao chép nội dung cơ bản từ các đồ án khác, hay
các sản phẩm tương tự mà không phải do tơi làm ra. Để hồn thành luận văn cao
học này, tôi chỉ sử dụng những tài liệu đã được ghi trong phần những tài liệu tham
khảo và không sử dụng bất cứ một tài liệu nào khác. Nếu phát hiện có sự sao chép,
tơi xin hồn tồn chịu trách nhiệm.
Hà Nội, ngày tháng năm
Học viên

Đỗ Nguyễn Trung


DANH MỤC CÁC BẢNG
Bảng 4-1. Tập video thử nghiệm

60

Bảng 4-2. Thông số cài đặt cho video 1

63

Bảng 4-3. Kết quả định lượng video 1

63

Bảng 4-4. Thông số cài đặt cho video 2


65

Bảng 4-5. Kết quả định lượng video 2

65

Bảng 4-6. Thông số cài đặt cho video 3

68

Bảng 4-7. Kết quả định lượng video 3

68

Bảng 4-8. Thông số cài đặt cho video 4

70

Bảng 4-9. Kết quả định lượng video 4

70


DANH MỤC CÁC HÌNH VẼ
Hình 1-1. Ba bước trong hệ thống theo dõi giám sát và phân tích sự kiện

3

Hình 1-2. Biểu diễn hình dạng đối tượng


4

Hình 1-3. Đặc trưng màu sắc

7

Hình 1-4. Phương pháp trừ nền

11

Hình 1-5. Lưu đồ xây dựng mẫu chuyển động

13

Hình 1-6. Hai pha chu trình ước lượng

17

Hình 2-1. Hình dạng và trang phục mỗi người khác nhau

21

Hình 2-2. Tư thế và hướng vận động của con người thay đổi liên tục

22

Hình 2-3. Mơi trường với nhiều yếu tố thay đổi

22


Hình 2-4. Người đi bộ khuất sau cột đèn

23

Hình 2-5. Hệ thống theo dõi sử dụng nhiều camera

24

Hình 2-6. Sơ đồ khối module theo dõi đối tượng ảnh sử dụng bộ lọc Kalman

26

Hình 2-7. Hoạt động của giải thuật codebook với tín hiệu một chiều

30

Hình 2-8. Sơ đồ chu trình bộ lọc Kalman

37

Hình 2-9. Sơ đồ hoạt động bộ lọc Kalman

38

Hình 2-10. Mơ hình khơng gian màu RGB

39

Hình 2-11. Mơ hình khơng gian màu HSV


40

Hình 2-12. Mơ hình khơng gian màu YcbCr

41

Hình 2-13. Biểu diễn histogram của một tập điểm ảnh

42


Hình 3-1. Lưu đồ thuật tốn module chương trình

46

Hình 3-2. Lưu đồ thuật tốn học và trừ nền

47

Hình 3-3. Kết quả minh họa quá trình học và trừ nền

51

Hình 3-4. Lưu đồ thuật tốn phát hiện đối tượng chuyển động

52

Hình 3-5. Lưu đồ thuật tốn theo dõi đối tượng

55


Hình 4-1. Kết quả phát hiện và theo dõi trên video 1

64

Hình 4-2. Kết quả phát hiện và theo dõi trên video 2

66

Hình 4-3. Kết quả phát hiện sai dẫn đến mất quan sát trên video 2

67

Hình 4-4. Kết quả phát hiện và theo dõi trên video 3

69

Hình 4-5. Kết quả phát hiện và theo dõi trên video 4

71


MỞ ĐẦU
Theo dõi đối tượng ảnh trong video (object tracking) là một hướng nghiên
cứu có ý nghĩa quan trọng trong lĩnh vực thị giác máy tính (computer vision). Sự
phát triển nhanh chóng của cơng nghệ máy tính, việc ra đời các camera thế hệ mới
chất lượng cao và giá thành hạ, cũng như những tiến bộ vượt bậc trong lĩnh vực
phân tích ảnh (image analysis) đã tạo điều kiện thuận lợi, bổ sung nhiều cơng cụ
tiện ích hỗ trợ thực hiện bài toán này.
Các ứng dụng của theo dõi đối tượng ảnh trong video có thể kể đến :

9 Nhận dạng dựa trên chuyển động (motion-based recognition): thực hiện
thông qua việc phân tích chuyển động của đối tượng.
Các ứng dụng cụ thể là phân lớp các sự kiện có người theo dáng đi
(silhouette) và cử chỉ (gesture), tự động theo dõi một hoặc nhiều đối tượng.
9 Giám sát tự động (automated surveillance): Các hệ thống giám sát tự động
tiến hành quan sát một khu vực nhằm phát hiện người xâm nhập vào vùng
không cho phép hoặc những hoạt động bất thường.
9 Tương tác người - máy (human - computer interaction): Q trình tương tác
người máy thực hiện thơng qua việc nhận biết cử chỉ (cử chỉ bàn tay, cử chỉ
cơ thể) hay cảm xúc (gương mặt) của con người.
9 Giám sát giao thông (traffic monitoring): Hệ thống giám sát giao thơng thu
thập và xử lý hình ảnh từ camera trên các tuyến đường, để điều chỉnh luồng
phương tiện đi lại, khắc phục tình trạng tắc đường.
9 Thiết kế xe tự hành (vehicle navigation): Xe tự hành là loại xe có khả năng
lập trình đường đi và tránh các vật cản.
Mặc dù được nghiên cứu qua nhiều năm, bài toán theo dõi đối tượng ảnh
hiện tại vẫn là một vấn đề mở. Những khó khăn gặp phải khi thực hiện bài tốn này
có thể kể đến :
9 Mất thơng tin do phép chiếu cảnh vật 3D lên ảnh 2D khi quay video.


9 Nhiễu gây ra do thiết bị quay và con người.
9 Sự phức tạp của chuyển động.
9 Sự đa dạng của hình dáng đối tượng.
9 Những thay đổi về khung cảnh quan sát.
9 Đối tượng quan sát bị che khuất một phần hay tồn bộ.
9 u cầu về tính thời gian thực.
Cho đến nay, đã có nhiều phương pháp theo dõi đối tượng ảnh được đề xuất
như : phương pháp so khớp mẫu, phương pháp Meanshift, phương pháp ước lượng
dựa trên bộ lọc Kalman (Kalman filter) hay bộ lọc hạt (Particle filter). Mỗi phương

pháp đều có ưu điểm và nhược điểm riêng. Trong đó, phương pháp sử dụng bộ lọc
Kalman, phát triển từ những năm 60 của thế kỷ 20, vẫn cho thấy bằng thực nghiệm
là hoạt động hiệu quả trong nhiều trường hợp.
Từ mong muốn tiếp cận một hướng nghiên cứu mới trên thế giới và hứa hẹn
mang lại nhiều ứng dụng thực tế, đề tài “Nghiên cứu và phát triển module theo dõi
tự động các đối tượng ảnh” được thực hiện với trọng tâm gồm hai phần :
9 Tìm hiểu phương pháp theo dõi đối tượng ảnh sử dụng bộ lọc Kalman.
9 Ứng dụng phương pháp đã nghiên cứu vào bài toán theo dõi một hoặc nhiều
đối tượng ảnh.
Mục tiêu của đề tài không chỉ dừng lại ở việc nghiên cứu thử nghiệm và
đánh giá tính hiệu quả của bộ lọc Kalman trong bài toán theo dõi một đối tượng
trong ảnh mà cịn trong bài tốn theo dõi nhiều hơn một đối tượng cùng một lúc.
Bài toán theo dõi nhiều đối tượng cùng một lúc đòi hỏi phải quản lý các bộ lọc
Kalman cũng như việc gán quan sát đối tượng hợp lý.
Mơi trường thử nghiệm: Chương trình và các tiện ích cài đặt trên mơi trường
Visual Studio.Net 2008, sử dụng thư viện mã nguồn mở OpenCV. Các modules
được xây dựng trên ngơn ngữ C++ nên có thể tiếp tục phát triển trên các hệ điều
hành khác nhau (Windows, Linux…).


Đề tài trình bày theo cấu trúc gồm bốn chương :
9 Chương I - Lý thuyết về theo dõi đối tượng ảnh : Giới thiệu chung về bài
toán theo dõi đối tượng ảnh, bao gồm định nghĩa bài toán, các khó khăn cũng
như những hướng tiếp cận. Qua đó, đánh giá và đưa ra vấn đề mà đề tài sẽ
tập trung thử nghiệm.
9 Chương II - Theo dõi đối tượng ảnh sử dụng bộ lọc Kalman : Đưa ra mơ
hình bài tốn theo dõi đối tượng ảnh, trình bày cơ sở lý thuyết về bộ lọc
Kalman, phát hiện đối tượng và gán quan sát đối tượng.
9 Chương III - Thiết kế cài đặt : Thiết kế sơ đồ khối, lưu đồ thuật toán cho bài
toán theo dõi đối tượng ảnh sử dụng bộ lọc Kalman. Ngoài ra, chương này

cũng giới thiệu về OpenCV và các hàm xử lý ảnh được sử dụng để phát triển
module của đề tài.
9 Chương IV - Thử nghiệm và đánh giá : Tiến hành thử nghiệm với dữ liệu
video thu nhận theo các kịch bản khác nhau: một đối tượng chuyển động và
nhiều đối tượng chuyển động cùng một lúc. Trình bày những kết quả thu
được, các hạn chế và hướng phát triển đề tài.
Tuy khối lượng công việc cần thực hiện lớn, song với nỗ lực của bản thân và
sự hướng dẫn tận tình của thầy cô, cùng sự giúp đỡ của bạn bè, em đã dần dần tiếp
cận được với lĩnh vực xử lý ảnh - thị giác máy và hoàn thành các nhiệm vụ đề tài
đặt ra đúng thời hạn.
Em xin chân thành cảm ơn sự chỉ bảo, dạy dỗ tận tình của các thầy, các cô
trong bộ môn Kỹ thuật đo và Tin học công nghiệp - Khoa Điện - Trường Đại học
Bách Khoa Hà Nội.
Em cũng xin chân thành cảm ơn ban lãnh đạo trung tâm MICA đã tạo mọi
điều kiện cho em được thực hiện luận văn tại trung tâm, cùng thầy cô, anh chị và
các bạn ở trung tâm đã giúp đỡ em trong suốt thời gian em thực tập.


Cuối cùng, với lòng biết ơn chân thành, em xin đặc biệt cảm ơn Tiến sĩ Trần
Thị Thanh Hải, cán bộ nghiên cứu thuộc trung tâm nghiên cứu quốc tế MICATrường Đại học Bách Khoa Hà Nội là người trực tiếp hướng dẫn em trong suốt quá
trình thực hiện luận văn.
Mặc dù đã cố gắng, song do hạn chế về thời gian, kiến thức nên trong luận
văn vẫn không tránh khỏi những thiếu sót. Em mong nhận được những ý kiến đóng
góp chân thành của các thầy, các cơ, cũng như các bạn đọc.

Hà Nội, ngày tháng năm
Học viên thực hiện

Đỗ Nguyễn Trung



CHƯƠNG I - TỔNG QUAN VỀ BÀI TOÁN THEO DÕI ĐỐI TƯỢNG ẢNH
1.1. Mơ hình bài tốn
1.1.1. Định nghĩa bài toán
Theo dõi đối tượng ảnh trong video (object tracking) là thực hiện dự đoán
quỹ đạo chuyển động của đối tượng trên mặt ảnh phẳng khi đối tượng đó di chuyển.
Nói cách khác, một bộ theo dõi (object tracker) sẽ tiến hành gán nhãn tương ứng
cho đối tượng bị theo dõi (object-observation assignment) qua các khung hình
(frame) liên tiếp của video [39].
Như vậy, để thực hiện việc theo dõi, tại mỗi frame video phải có dữ liệu
quan sát về đối tượng. Dữ liệu này thường lấy được thông qua các bộ phát hiện đối
tượng (object detectors).
1.1.2. Phân loại bài toán
Tùy thuộc vào mục đích ứng dụng, theo dõi đối tượng ảnh trong video có thể
chia thành hai trường hợp: bài tốn theo dõi một đối tượng (single object tracking)
và bài toán theo dõi nhiều đối tượng (multiple object tracking).
Đối với trường hợp theo dõi một đối tượng, việc gán quan sát - đối tượng
được thực hiện một cách dễ dàng. Trọng tâm của bài toán này là giải thuật để xác
định chuyển động của đối tượng xảy ra ở đâu, xảy ra như thế nào, và hướng của
chuyển động.
Bài toán theo dõi nhiều đối tượng thường gặp hơn trong thực tế, do các ứng
dụng đòi hỏi giám sát nhiều hơn một đối tượng cùng một lúc rất phổ biến. Ví dụ
như tại các bến tàu điện ngầm, sân bay, hay siêu thị, hệ thống camera phải quan sát
số lượng lớn phương tiện và người di chuyển, hoạt động. Hoặc trên các tuyến
đường quốc lộ, công việc điều phối luồng giao thông yêu cầu quan sát không chỉ
một mà nhiều xe cộ đi lại trên đường.

1



Có thể nói, bài tốn theo dõi nhiều đối tượng cùng một lúc là bài tốn phức
tạp, do có nhiều đối tượng, dẫn đến có nhiều quan sát tại mỗi thời điểm. Bởi vậy,
việc gán quan sát - đối tượng trở thành nhiệm vụ quan trọng của bài toán này.
Mục tiêu đề tài tập trung vào trường hợp thứ hai, tức là thực hiện nghiên
cứu và xây dựng module cho phép theo dõi một hoặc nhiều đối tượng cùng một
lúc, có khả năng ứng dụng vào thực tế.
1.1.3. Các bước chính trong bài tốn
Giải thiết có một video thể hiện các đối tượng chuyển động. Ký hiệu Obj_i
(i=1, 2, 3…N) là đối tượng cần theo dõi, Ovs_ij (j=1,2,3…M) là quan sát của Obj_i
ở thời điểm kế tiếp.
Tại lúc khởi tạo t=0, trên frame f_0, xác định được đối tượng Obj_i cần theo
dõi. Trong frame f_1 sau đó, có các quan sát Ovs_ij của Obj_i. Việc theo dõi đối
tượng Obj_i từ khung hình f_0 qua khung hình f_1 được thực hiện thơng qua các
bước sau:
1) Dự báo vị trí của đối tượng Obj_i trong khung hình tiếp theo f_1.
2) Xác định những quan sát Obv_ij nằm trong miền dự báo.
3) So sánh đối tượng Obj_i với các quan sát Obv_ij và tìm ra quan sát giống
nhất với đối tượng, gọi là Obv_similar.
4) Thực hiện cập nhật lại thông tin về đối tượng Obj_i từ quan sát giống nhất
Obv_similar tìm thấy này.
1.1.4. Vai trị của bài tốn
Theo dõi đối tượng ảnh là một phần trong hệ thống theo dõi giám sát và phân
tích sự kiện qua video.
Thơng thường một hệ thống theo dõi giám sát và phân tích sự kiện qua
video gồm ba bước chủ yếu sau:

2


9 Phát hiện các đối tượng chuyển động (detection of moving objects).

9 Theo dõi đối tượng qua các frame ảnh (object tracking).
9 Phân tích chuyển động để nhận biết trạng thái (analysis of object).

Hình 1-1. Ba bước trong hệ thống theo dõi giám sát và phân tích sự kiện

Như vậy, bước theo dõi làm nhiệm vụ kết nối các quan sát của cùng một đối
tượng theo thời gian, để từ đó đưa ra thơng tin về hành vi của đối tượng cũng như
sự kiện đang xảy ra. Có thể thấy, bước này là bước thứ hai, thực hiện sau phát hiện
đối tượng (hình 1-1). Tức là, chỉ khi xác định được đối tượng cần quan tâm, mới có
thể tiến hành theo dõi và phân tích.
Các phần trình bày dưới đây sẽ mô tả từng bước trong hệ thống theo dõi
giám sát và phân tích sự kiện qua video cùng một số cách tiếp cận các bước đó.
Những hệ thống trong thực tế thường kết hợp nhiều phương pháp khác nhau để có
thể đem lại hiệu quả cao nhất.
1.2. Biểu diễn đối tượng ảnh
Các bước trong bài toán theo dõi đối tượng ảnh nói riêng và hệ thống theo
dõi giám sát và phân tích sự kiện nói chung đều liên quan đến đối tượng ảnh. Vì
vậy, trước tiên cần phải định nghĩa đối tượng ảnh. Nghĩa là, cần nắm được những
thông tin về đối tượng như vị trí trong khơng gian, vận tốc chuyển động, đặc trưng
vật lý của đối tượng. Các đối tượng có thể định nghĩa là bất kỳ, miễn sao thuận tiện
cho việc theo dõi và phân tích sau này. Tuy nhiên, thông thường, chúng được biểu
diễn thông qua hình dạng (shape) và diện mạo bên ngồi (appearance).

3


1.2.1. Hình dạng

 
Hình 1-2. Biểu diễn hình dạng đối tượng: (a)trọng tâm, (b) nhiều điểm, (c) khung

chữ nhật, (d) khung ellipse, (e) tập khung thành phần, (f) khung xương, (g) các điểm
trên đường bao, (h) đường bao, (i) bóng [39]

Có nhiều cách thức để biểu diễn hình dạng của đối tượng [39]:
9 Điểm (points): Đối tượng được thể hiện bằng một điểm, thường là trọng tâm
(hình 1-2.a) hay một tập các điểm đặc biệt (hình 1-2.b). Cách thức này đơn
giản, thường được áp dụng cho bài tốn trong đó đối tượng chiếm một vùng
nhỏ trên ảnh.
9 Dạng hình học thơ sơ (primitive geometric shapes): Hình dạng đối tượng thể
hiện thơng qua một hình chữ nhật, một hình ellipse (hình 1-2.c, d). Thường
thì cách thức này chỉ thích hợp cho việc biểu diễn các đối tượng có hình dạng
ít thay đổi [10]. Tuy nhiên, một điểm mạnh của cách thức biểu diễn này là
tính đơn giản, dễ áp dụng trong thực nghiệm.

4


9 Bóng (silhouette) và đường bao (contour): Đường bao thể hiện ranh giới của
một đối tượng so với các vùng khác (hình 1-2.h). Vùng nằm bên trong đường
bao gọi là bóng (hình 1-2.i). Biểu diễn bóng và đường bao là hai loại đặc
trưng được sử dụng rất phổ biến để biểu diễn đối tượng vì đây là những
thơng tin có ý nghĩa trong việc phân biệt đối tượng [40].
9 Mô hình khớp nối (articulated shape models): Thực hiện chia đối tượng
thành các thành phần và nối với nhau qua các khớp, tương tự như cơ thể con
người gồm thân, hai chân, hai tay, đầu (hình 1-2.e). Mơ hình cho phép biểu
diễn đối tượng mang tính cấu trúc cao (thân người, hình trạng bàn tay, khn
mặt…) [6]. Đồng thời, nó cung cấp các thông tin ngữ nghĩa về cấu trúc của
đối tượng. Mặc dù, phương pháp này đẹp về mặt biểu diễn, việc thực hiện lại
phức tạp, do phải tiến hành phát hiện các thành phần đối tượng cũng như
quan hệ giữa chúng.

9 Mơ hình khung xương (skeletal models): Mơ hình khung xương có thể thu
được bằng cách thực hiện tìm các đường trục cho vùng bóng của đối tượng
(hình 1-2.f). Mơ hình này cũng được sử dụng nhiều trong việc biểu diễn các
đối tượng có cấu trúc.
1.2.2. Diện mạo
Theo [39], diện mạo đối tượng có thể được biểu diễn thơng qua:

9 Phân bố xác xuất (probability densities of object appearance): Ước lượng
phân bố xác suất các đặc điểm bên ngoài (color, texture) tính tốn từ vùng
ảnh thu được qua các mơ hình biểu diễn hình dạng đối tượng (vùng bên trong
ellipse hay đường biên) (hình 1-3). Những ước lượng này có thể là mơ hình
tham số (parametric) tn theo phân bố chuẩn Gaussian hoặc một tập phân
bố Gaussian, hay có thể là mơ hình phi tham số (nonparametric).

9 Khn mẫu (templates): Các khuôn mẫu thu được bằng cách sử dụng biểu
diễn dạng hình học hay bóng đối tượng. Lợi ích của khn mẫu là nó mang
đặc điểm cả về khơng gian và diện mạo của đối tượng. Tuy nhiên, do chỉ mã
5


hóa từ một hướng nhìn nên khn mẫu thích hợp cho đối tượng tư thế ít thay
đổi trong q trình xử lý [6].

9 Mơ hình động (active appearance models): Để xây dựng mơ hình đối tượng,
người ta tiến hành mơ phỏng hình dạng và diện mạo bên ngồi của đối
tượng. Nghĩa là hình dạng đối tượng sẽ xác định bởi một tập điểm mốc
(landmark), nằm trên đường bao hay nằm hẳn bên trong vùng chứa đối
tượng. Tại mỗi điểm mốc có một vector đặc tính lưu thơng tin về màu sắc, bề
mặt hay biên độ gradient (gradient magnitude). Mơ hình biểu diễn này u
cầu q trình luyện mẫu.


9 Mơ hình đa quan sát (multiview appearance models): Mơ hình đa quan sát
mã hóa các hướng nhìn khác nhau của một đối tượng [27]. Có thể thực hiện
mơ hình thơng qua xây dựng một không gian con xác định theo hướng quan
sát hoặc tiến hành một quá trình luyện mẫu. Điểm giới hạn của mơ hình đa
quan sát là u cầu về thời gian xử lý.
1.2.3. Trích chọn đặc trưng
Đặc trưng (feature) của đối tượng thường lựa chọn với mong muốn sao cho
đối tượng có thể được nhận biết từ khung cảnh quan sát, cũng như dễ dàng phân
biệt với đối tượng khác.
Việc trích chọn ra các đặc trưng để biểu diễn đối tượng, cho phép xác định
đúng đối tượng từ một tập hợp đối tượng chính là một nhiệm vụ cần làm để thực
hiện bài toán gán quan sát – đối tượng.
9 Màu sắc (color): Màu sắc là đặc trưng về diện mạo của đối tượng. Nó do hai
nhân tố vật lý quyết định: sự phân bố mật độ phổ năng lượng của nguồn
sáng, và bề mặt phản xạ của đối tượng được chiếu sáng [12]. Trong xử lý ảnh
thường sử dụng không gian màu RGB (red, green, blue) biểu diễn màu sắc
của đối tượng. Tuy nhiên, không gian màu RGB không phải là không gian
màu cảm nhận, nghĩa là sự khác nhau giữa các màu sắc trong không gian

6


màu RGB không giống với cảm nhận của con người. Vì vậy, đã ra đời các
khơng gian màu khác như HSV, YcbCr… Chúng được xác định thông qua
các phép biến đổi tuyến tính hoặc phi tuyến từ khơng gian RGB. Nói chung,
màu sắc là thuộc tính thơng dụng nhất, trực quan nhất và đã được sử dụng
rộng rãi trong các ứng dụng.

 


(a)

    

 

(b)

Hình 1-3. Đặc trưng màu sắc: (a) ảnh đầu vào, (b) biểu đồ histogram [4]
9 Đường biên (edges): Đường biên đối tượng sinh ra khi có sự thay đổi đột
ngột về cường độ sáng trong ảnh. Một điểm quan trọng của đường biên là nó
ít chịu tác động của ánh sáng hơn so với màu sắc. Nhiều giải thuật tìm phân
vùng đối tượng ảnh hay nhận dạng sử dụng đường biên, do tính đơn giản và
độ chính xác cao [15].
9 Kết cấu (texture): Kết cấu là thước đo sự thay đổi cường độ sáng trên một bề
mặt. So với màu sắc, đặc trưng kết cấu ảnh cần một số bước xử lý để xây
dựng một bộ mô tả. Nếu như đường biên biểu diễn hình dạng của đối tượng
thì kết cấu biểu diễn tính chất bề mặt của đối tượng, từ đó cho phép phân loại
các đối tượng tương đồng về hình dáng bên ngồi nhưng có sự khác biệt về
bề mặt.
9 Luồng quang học (optical flow): Optical flow là một trường vector dịch
chuyển, xác định sự tịnh tiến của mỗi pixel trong một vùng ảnh. Nếu như
đường biên, kết cấu, màu sắc là những đặc trưng thường được sử dụng để mơ
tả các đối tượng tĩnh thì optical flow là một đặc trưng cho phép biểu diễn sự

7


chuyển động của các đối tượng trong không gian. Việc tính tốn optical flow

thực hiện dựa trên một số điều kiện về ánh sáng, chẳng hạn giả thiết tác động
của ánh sáng với từng pixel không đổi qua các frame ảnh liên tiếp [3].
Phần lớn các đặc trưng được lựa chọn bởi người sử dụng căn cứ theo lĩnh
vực áp dụng và tài nguyên sẵn có. Vấn đề cần quan tâm khác là giải thuật để tự
động phát hiện đặc trưng. [39] đề cập đến hai phương pháp filter và wrapper.
Phương pháp filter cố gắng tìm những đặc trưng dựa trên một chỉ tiêu nhất định.
Còn phương pháp wrapper chọn đặc trưng dựa trên tính hữu ích của chúng trong
việc giải quyết bài toán.
1.3. Phát hiện đối tượng ảnh
Để khởi tạo bộ theo dõi (object tracker) hay để có được dữ liệu quan sát về
đối tượng (object-observation assignment), đòi hỏi phải thực hiện phát hiện đối
tượng (object detection). Hướng tiếp cận phổ biến của phát hiện đối tượng là xử lý
thông tin ở từng frame riêng lẻ. Tuy nhiên, một số giải thuật khác lại sử dụng chuỗi
thông tin thu được từ các frame liên tiếp để giảm thiểu sai số. Sau khi tìm được
vùng chứa đối tượng trong frame ảnh, bộ theo dõi sẽ xác định sự tương ứng của đối
tượng giữa các frame rồi tiến hành gán quan sát trên đối tượng đã phát hiện.
Phát hiện và nhận dạng đối tượng ảnh là các bài toán lớn và phức tạp, yêu
cầu những nghiên cứu chuyên sâu. Ở đây, đề tài sẽ chỉ đề cập đến một số phương
pháp phát hiện đối tượng ảnh tương đối phổ biến cho phép thực hiện đơn giản
nhằm phục vụ cho mục tiêu chính là bài tốn theo dõi đối tượng.
9 Tìm điểm đặc trưng (interest points): Để phát hiện và nhận dạng đối tượng,
có nhiều giải thuật đã được triển khai, trong đó phương pháp sử dụng các
điểm đặc trưng kết hợp với việc biểu diễn đối tượng như một tập các từ quan
sát (bag of visual words) đã được chứng minh bằng thực nghiệm là cho kết
quả phát hiện và nhận dạng tương đối hiệu quả trên những cơ sở dữ liệu lớn.

8


Ở hướng tiếp cận này, có thể kể đến các nghiên cứu về tìm điểm đặc trưng

của Moravec [23], Harris và Stephens [14], Shi và Tomasi [31], Lowe [22].
Harris và Stephens [14] tìm đạo hàm bậc hai các biến thiên cường độ ảnh M.
Sau đó tính các giá trị định thức và vết của M trong một lân cận R.
(1-1)
với k là hằng số. Điểm đặc trưng sẽ được đánh dấu bởi một ngưỡng R sau
một số phép toán xác định cực trị.
Lowe [22] giới thiệu giải thuật SIFT (Scale Invariant Feature Transform)
tìm điểm đặc trưng qua bốn bước, Đầu tiên, một không gian thang đo (scale
space) được xây dựng dựa trên các bộ lọc Gaussian với những tỉ lệ khác
nhau. Các điểm đặc trưng ứng viên sẽ lựa chọn từ cực tiểu minima và cực đại
maxima của các ảnh DoG (difference-of-Gaussians). Bước tiếp theo, cập
nhật lại mỗi vùng ứng viên bằng phép nội suy giá trị màu thông qua những
pixel lân cận. Bước ba, loại bỏ đặc trưng không thỏa mãn về độ tương phản.
Cuối cùng, giữ lại những điểm có hướng xác định căn cứ vào giá trị đỉnh
lược đồ histogram tập các hướng gradient (gradient directions) trong một lân
cận vùng ứng viên.
Mặc dù cho kết quả nhận dạng tốt, các phương pháp phát hiện này đòi hỏi
thời gian tính tốn lớn, khơng thực sự phù hợp với các ứng dụng yêu cầu thời
gian thực.
9 Phân đoạn ảnh (segmentation): Mục đích của phân đoạn ảnh là chia một ảnh
thành các vùng đồng dạng. Mọi giải thuật phân đoạn ảnh tập trung vào hai
vấn đề, ngưỡng chỉ tiêu để có vùng phân chia tốt và cách thức để thực hiện
giải thuật với hiệu suất cao.
Một số phương pháp thực hiện phân đoạn thích hợp cho bài tốn theo dõi đối
tượng ảnh có thể kể đến Mean-Shift Clustering [11], Image Segmentation
Using Graph-Cuts [30] [38], Active Contours [8] [40].
Trong kỹ thuật Image Segmentation Using Graph-Cuts, việc phân đoạn ảnh
chuyển thành phân tách một đồ thị. Trong đó các đỉnh lân cận V, tương ứng
9



các pixel, của một đồ thị G, tương ứng với ảnh, được nhóm vào N đồ thị con.
Tổng trọng số của các đường biên phân chia giữa hai đồ thị con gọi là một
nhát cắt. Wu và Leahy [38] áp dụng kỹ thuật này với mục tiêu cực tiểu hóa
số nhát cắt. Shi và Malik [30] đưa ra các nhát cắt tiêu chuẩn (normalized
cut), tức là nhát cắt không chỉ phụ thuộc tổng trọng số đường biên mà còn
dựa trên tỉ lệ giữa tổng trọng số kết nối các nút mỗi vùng so với toàn bộ các
nút đồ thị.
Trong kỹ thuật Active Contours, phân đoạn đối tượng là kết quả quá trình
khai triển đường bao gần ranh giới đối tượng, hay đường bao liền kề vùng
chứa đối tượng. Việc khai triển tiến hành trên cơ sở một hàm năng lượng
(energy functional) mô tả sự tương ứng của đường bao và giả thiết vùng
chứa đối tượng. Caselles [8] sử dụng đặc trưng cục bộ, như gradient ảnh,
Yilmaz [40] sử dụng đặc trưng tồn cục, như màu sắc, kết cấu trong q
trình thực hiện kỹ thuật này.
Mục đích phương pháp phân đoạn cho phép phân ảnh thành các vùng có
cùng tính chất. Tuy nhiên, những vùng này có thể tương ứng với đối tượng
mà ta quan tâm, hoặc có thể chỉ tương ứng với một vùng của một hay nhiều
đối tượng. Vì thế, khái niệm đối tượng khơng hồn tồn trùng khớp với vùng
xác định được qua phân đoạn ảnh và bài tốn phát hiện đối tượng sẽ khơng
được giải quyết triệt để.
9 Thực hiện trừ nền (background subtraction): Đối với video trong đó có đối
tượng chuyển động, việc phát hiện đối tượng có thể thực hiện bằng cách xây
dựng một phơng cảnh gọi là nền (background mode) và sau đó tìm những
thay đổi của từng frame đầu vào so với nền (hình 1-4). Những pixel thuộc
vùng ảnh thay đổi sẽ được đánh dấu và đưa vào quá trình xử lý tiếp theo.
Việc phân biệt các khung hình được nghiên cứu từ cuối thập niên 70 thế kỷ
20 bởi Jain và Nagel. Tuy nhiên, phải đến các cơng trình của Wren [37],
phương pháp trừ nền mới trở nên phổ biến. Sau đó, Gao [13], Kim [20],
Rittscher [26], Stauffer và Grimson [32], đã phát triển phương pháp trừ nền


10


cho những trường hợp phức tạp, cũng như sử dụng thêm nhiều giải thuật xử
lý ảnh hỗ trợ.
Phương pháp trừ nền thực sự đơn giản và hoạt động hiệu quả với những ứng
dụng sử dụng camera cố định, khung cảnh ít biến động, đối tượng tương đối
phân biệt với nền. Vì vậy, trong khn khổ luận văn, với mục đích thử
nghiệm, và do phát hiện đối tượng không phải là nhiệm vụ chính của đề tài,
phương pháp trừ nền sẽ được lựa chọn sử dụng.

 

(a)

(b)

(c)

   Hình 1-4. Phương pháp trừ nền: (a) ảnh đầu vào có đối tượng, (b) ảnh nền, (c)
ảnh sai khác. [4]
9 Phương pháp học (machine learning): Việc phát hiện đối tượng có thể thực
hiện thơng qua q trình học tự động các quan sát khác nhau của đối tượng
từ một bộ mẫu. Như vậy, phát hiện đối tượng trở thành quá trình so khớp các
đặc trưng giữa mẫu và chuỗi ảnh. Phương pháp này để đạt được độ chính xác
cao thường tốn nhiều chi phí và phụ thuộc vào chi tiết mức độ chính xác của
bộ mẫu sử dụng.
Những nghiên cứu theo hướng này gồm Support Vector Machines [24],
Neural Networks [28], Adaptive Boosting [36].

Adaptive Boosting là giải thuật thực hiện kết hợp các bộ phân loại yếu thành
một bộ phân loại mạnh. Các bộ phân loại yếu hoạt động giống như một tập
các ngưỡng, được áp dụng lên các đặc trưng đối tượng trích chọn từ ảnh.

11


Viola [36] đã dùng kỹ thuật Adaboost để phát hiện người đi bộ qua các
video.
Cũng giống như bộ phân loại, Support Vector Machines (SVM) nhóm tập dữ
liệu vào hai lớp bằng cách tìm siêu phẳng biên cực đại phân tách một lớp với
các lớp khác. Papageorgious [24] dùng SVM kết hợp đặc trưng Haar phát
hiện người đi bộ và khuôn mặt người trong ảnh. 
1.4. Theo dõi đối tượng ảnh
Như đã định nghĩa, theo dõi đối tượng ảnh là thực hiện dự đoán quỹ đạo
chuyển động của đối tượng trên mặt ảnh phẳng. Khi các đối tượng chuyển động,
ngoài sự thay đổi về vị trí, có thể cịn có sự thay đổi về diện mạo, kích thước, hình
dáng…. Vì vậy, việc theo dõi cần đưa ra các thông tin về sự thay đổi này.
Một số phương pháp theo dõi đối tượng ảnh phổ biến có thể kể đến [7]:
9 Xây dựng mẫu chuyển động (motion templates)
9 Theo vết mean-shift và camshift (mean-shift and camshift tracking)
9 Xây dựng bộ ước lượng (estimators)
1.4.1. Xây dựng mẫu chuyển động
Mẫu chuyển động (motion templates) ) được nghiên cứu lần đầu tiên tại
phịng thí nghiệm MIT Media Lab, sau đó được phát triển bởi Bradski và Davis [6].
Đây là một phương pháp rất hiệu quả để theo dõi những chuyển động thông thường,
đặc biệt cho các ứng dụng về nhận dạng cử chỉ.
Để thực hiện so khớp mẫu, trước hết cần xác định dáng (silhouette) hay một
phần dáng của đối tượng. Silhouette đối tượng ảnh có thể được được xác định thông
qua một số kỹ thuật trừ nền và phân đoạn ảnh. Khi đối tượng di chuyển, bản sao

dáng đối tượng mới nhất được cập nhật vào “ảnh lưu trữ chuyển động” MHI
(motion history image), được gán nhãn thời gian với độ chính xác dấu phảy động
(floating point timestamp). Ảnh MHI chính là biểu diễn của mẫu chuyển động. Tùy

12


×