Trong bài báo này, thuật toán với sự kết hợp giữa Mô hình hỗn hợp Gauss và Frame Differencing (CGMMFD) được đề xuất. Phương pháp này được mong đợi cho kết quả khả quan đối với các tình huống bám đuổi khác nhau. Cũng trong bài báo này, các tiêu chí đánh giá được xây dựng cụ thể để đánh giá sự hiệu quả của mỗi phương pháp cho từng trường hợp cụ thể. Mời các bạn cùng tham khảo!
Trang 1Hội Thảo Quốc Gia 2015 về Điện Tử, Truyền Thông và Công Nghệ Thông Tin (ECIT 2015)
Phát hiện và bám đuổi cá bằng phương pháp GMM
kết hợp Frame-Differencing
Nguyễn Đình Minh Nhật, Huỳnh Như Kiên, Võ Ngọc
Nhân
Trung Tâm Xuất Sắc, Trường Đại Học Bách Khoa – Đại
Học Đà Nẵng
Đà Nẵng, Việt Nam Email: ndmnhat71@gmail.com,
vongocnhan4292@gmail.com,
nhukienhuynh6392@gmail.com
Phạm Văn Tuấn Trung Tâm Xuất Sắc, Trường Đại Học Bách Khoa – Đại
Học Đà Nẵng
Đà Nẵng, Việt Nam Email: pvtuan@dut.udn.vn
Tóm tắt— Phát hiện và bám đuổi cá (FDT) là một bước quan
trọng trong nghiên cứu hải dương học, đặc biệt là trong việc dự
đoán những thay đổi chất lượng nguồn nước và những biến động
về số lượng cá trong quần thể Trong bài báo này, thuật toán với
sự kết hợp giữa Mô hình hỗn hợp Gauss và Frame Differencing
(CGMMFD) được đề xuất Phương pháp này được mong đợi cho
kết quả khả quan đối với các tình huống bám đuổi khác nhau.
Cũng trong bài báo này, các tiêu chí đánh giá được xây dựng cụ
thể để đánh giá sự hiệu quả của mỗi phương pháp cho từng
trường hợp cụ thể Các kết quả thực nghiệm đã chỉ ra rằng
phương pháp này cho ra sự chính xác trong bám đuổi lớn hơn
khí so với bốn phương pháp khác đó là Trừ nền, Mô hình hỗn
hợp Gauss, Bám đuổi Mean shift và Lọc particle Trong khí các
phương pháp có những khó khăn để bám đuổi cá trong một vài
trường hợp nhất định thì phương pháp được đề xuất này có thể
hoạt động tốt cho các tình huống khác nhau
Từ khóa—Phát hiện và bám đuổi cá, CGMMFD, Mean Shift,
Lọc particle
I GIỚITHIỆU Trong những năm gần đây, bám đuổi vật thể đang nhận được
nhiều sự quan tâm Đối với ứng dụng Phát hiện và bám đuổi
cá, Lọc Alpha-Beta and Lọc Kalman [1] là các kĩ thuật phổ
biến được sử dụng cho bám đuổi vật thể Phương pháp bám
đuổi khối được sử dụng để bám đuổi cá Do đó, phương pháp
này được sử dụng trong các ứng dụng thống kê số lượng cá [2]
Đối với việc phát hiện cá tự động [3], các phương pháp dựa
vào các thuật toán phân loại thuộc tính Haar-like xếp lớp được
tạo ra bằng cách sử dụng các ảnh dưới nước từ thiết bị điều
khiển từ xa dưới các điều kiện khảo sát đại dương
Trong hệ thống FDT này, các vấn đề gây khó khăn nhất là sự
xuất hiện bóng của cá, là khi cá không di chuyển hay là khi cá
di chuyển với các vận tốc khác nhau Để giải quyết các vấn đề
trên, trong bài báo này, bốn phương pháp bám đuổi mà được sử
dụng rộng rãi trong nhiều ứng dựng bám đuổi thời gian thực
được kiểm thử Phương pháp đầu tiên là sự kết hợp giữa Trừ
nền và bộ lọc Kalman Trong đó, ảnh nền được tạo ra bằng
phương pháp ước lượng nền trung bình (MB) Trong phương
pháp thứ hai, Mô hình hỗn hợp Gauss (GMM) [3] được sử
dụng để phát hiện cá, sau đó, bộ lọc Kalman [4, 5] sẽ bám đuổi
cá Độ chính xác của cả hai phương pháp này phụ thuộc nhiều
vào chất lượng nền được tạo ra Phương pháp thứ ba và thứ tư
là bám đuổi Mean shift (MS) [6, 7] và lọc Particle (PF) [8, 9] Hai phương pháp này đã chứng minh thích hợp cho việc bám đuổi các vật thể có hình dạng thay đổi
Trong một vài trường hợp nhất định, một vài trong số bốn phương pháp này cho ra các hiệu suất phát hiện và bám đuổi cá cao Tuy nhiên, không một phương pháp nào có thể phù hợp cho tất cả mọi trường hợp đặt ra Do đó, trong bài báo này, phương pháp mới CGMMFD được đề xuất Phương pháp mới này kết hợp GMM, lọc Kalman và Differencing Frame-Differencing được sử dụng bởi vì kĩ thuật này có thể phát hiện
vị trí con cá cho những khung hình mà GMM không thể Đặc biệt là trong khoảng từ 10 đến 15 khung hình đầu tiên khi mô hình nền chưa được hoàn thành bởi GMM Đối với vấn đề bóng xuất hiện, GMM sẽ tạo ra nhiều hơn một khối mà có thể
là cá Trong trường hợp này, khối gần nhất với tọa độ trọng tâm trước đó của con cá sẽ được chọn như là khối thật sự của con cá Như vậy, tất cả các vấn đề có thể xảy ra trong hệ thống FDT đã được khắc phục bởi phương pháp CGMMFD
Phần còn lại của bài báo được trình bày như sau Trong phần II, phương pháp CGMMFD được giới thiệu Phần III cho thấy các kết quả thực nghiệm và sự phân tích đánh giá 5 phương pháp dựa trên những kết quả đó 5 phương pháp đó là
MB, GMM, MS, PF và phương pháp được đề xuất CGMMFD trong các ngữ cảnh bám đuổi khác nhau
II SỰ KẾT HỢP GIỮAGMM VÀ FRAME-DIFFERENCING Kết quả thực nghiệm cho thấy rằng hai phương pháp là GMM và Ước lượng nền trung bình (MB) không thích hợp cho trường hợp cá đứng yên Trong khi đó, Bám đuổi Mean shift và Lọc particle tạo ra hiệu quả bám đuổi không cao khi xuất hiện bóng của con cá trong video Do đó, bốn phương pháp này không hiệu quả khi áp dụng vào ứng dụng FDT Từ đó, trong nghiên cứu này, sự kết hợp GMM và Frame-Differencing với Lọc Kalman được kiểm nghiệm Phương pháp này cho ra các kết quả đầy khả quan trong tất cả các trường hợp có thể Các chi tiết giải thuật sẽ được trình bày trong các phần tiếp theo
A Thuật toán Frame-Differencing
Phát hiện vật thể chuyển động từ một chuỗi các khung hình được thực hiện rộng rãi bằng thuật toán Frame-Differencing Nguyên lý của phương pháp này là phát hiện các vận thể Hội Thảo Quốc Gia 2015 về Điện Tử, Truyền Thông và Công Nghệ Thông Tin (ECIT 2015)
Trang 2chuyển động từ sự khác nhau giữa khung hình hiện tại và
khung hình quy ước Phương pháp này thiết lập một giá trị
ngưỡng sau khi trừ hai khung hình và xem các điểm ảnh như là
phần của mục tiêu chuyển động miễn là sự khác nhau tại những
điểm ảnh này lớn hơn giá trị ngưỡng Trong bài báo này,
Frame-Differencing có thể phát hiện cá vì máy quay được đặt
cố định Phương pháp này gồm có hai bước là phát hiện chuyển
động và phát hiện cá
1) Phát hiện chuyển động
Trong bước phát hiện chuyển động, sự khác nhau giữa
khung hình thứ k F k (x,y) và khung hình thứ k+1 F k+1 (x,y) được
tính để cho ra ảnh D k (x,y):
( ) | ( ) ( )| (1)
Sau đó, giá trị ngưỡng T được thiết lập cho ảnh D k (x,y) để
tạo ảnh nhị phân I k (x,y):
( ) ( ) { ( ) ( ) (2)
Hình 1 Sự minh họa cho Frame-Differencing
Khi giá trị các điểm ảnh trong ảnh ( ) lớn hơn giá trị
ngưỡng T thì các điểm ảnh đó được xem là vật thể Ngược lại
được xem là nền Sau đó, khối có diện tích lớn hơn ngưỡng S
(S=50 trong bài báo này) được xem như là vật thể di chuyển
Tuy nhiên, quá trình này cũng có thể tạo ra các lỗi trong phát
hiện chuyển động khi con cá đứng yên và đồng thời xuất hiện
nhiễu trong khung hình như ánh sáng thay đổi, hồ lắc lư dẫn
đến nước dao động…Do đó, chỉ khu vực có diện tích lớn hơn
diện tích hình chữ nhật bao quanh khối thu được từ khung hình
trước 2.25 lần được xem xét Vì vậy, sự khởi tạo vị trí ban đầu
của cá là cần thiết
Mặc dù có độ phức tạp thấp và hiệu quả phát hiện cao
nhưng phương pháp này vẫn cho thấy một số hạn chế Các giá
trị ngưỡng T và S thường được chọn thủ công tùy theo mỗi
trường hợp thực nghiệm Nếu giá trị T quá lớn thì có thể không
phát hiện được chuyển động Ngược lại, sẽ phát hiện ra nhiều
chuyển động trong khi thực tế chỉ có một (trường hợp nhiễu
xuất hiện)
2) Phát hiện cá
Trong bước phát hiện cá, thuật toán Three-Frame
Difference [10] được áp dụng Bước thứ nhất của thật toán là
trừ ba khung hình khác nhau theo lần lượt, với bước nhảy
khung hình là L, sau đó ta lấy hiệu của hai kết quả tìm được ở
trên để phát hiện được cá Cụ thể, khung hình thứ k trừ khung
hình thứ k-L cho ra ảnh nhị phân I k-L (x,y) Tương tự, khung
hình k+L trừ khung hình k cho ra ảnh nhị phân I k+L (x,y) Tiếp
theo, ảnh I k-L (x,y) giao với ảnh I k+L (x,y) tạo ra ảnh kết quả của
thuật toán Quy trình của thuật toán được tóm tắt theo các
phương trình dưới đây:
( ) | ( ) ( )| (3)
( ) | ( ) ( )| (4)
( ) ( ) { ( )
( ) (5)
( ) ( ) { ( )
( ) (6)
( ) ( ) { ( ) ( )
( ) ( ) (7) Hình 2 minh họa nguyên tắc của thuật toán
Frame-Differencing Hình 2a, 2b, 2c lần lượt là các khung hình thứ
k-10, k, k+10 với bước nhảy là 10 Các kết quả trừ hai khung
hình được thể hiện trong hình 2d và 2e Và, kết quả của thuật three-frame difference được thể hiện trong hình 2f
Kết quả của thuật toán này rất hứa hẹn Tuy nhiên, kết quả phụ thuộc nhiều vào bước nhảy L Nếu bước nhảy nhỏ (ví dụ
L=5) thì kết quả của phép giao hai ảnh nhị phân I k-L (x,y) và
I k+L (x,y) không phải là con cá mà là một khối nhỏ cái có thể
được hiểu là nhiễu Mặt khác, nếu bước nhảy L quá lớn thì rất
có khả năng con cá ở khung hình thứ k-L hoặc k+L trùng vị trí với nó ở khung hình thứ k Điều này dẫn tới không phát hiện được con cá như được trình bày trong hình 3 (L=30)
a) b) c)
d) e) f) Hình 2 Minh họa Phát hiện cá bằng Frame-Differencing
a) b) c)
d e f Hình 3 Không phát hiện cá khi L lớn
B Trường hợp bóng xuất hiện và khởi tạo vị trí ban đầu
Như được đề cập ở trên, bốn phương pháp bám đuổi là MB, GMM, MS và PF cho hiệu quả bám đuổi không cao khi xuất hiện bóng (khi cá bơi gần mặt nước hay gần thành hồ bằng gương) Sự xuất hiện của bóng dẫn tới sự phát hiện cá sai Do vậy, một kĩ thuật so sánh đơn giản được đề xuất để khắc phục vấn đề này Cụ thể, trong bước BlobAnalysis, số lượng khối tối
đa được ấn định là 5 Sau đó, tại khung hình đang xét, khối nào gần nhất với vị trí cá ở khung hình trước đó được chọn Trong hầu hết trường hợp, các khối của bóng ở vị trí xa hơn đóm của
cá Vì vậy, các lỗi do sự xuất hiện của bóng gây ra được loại
bỏ Nguyên lý đơn giản này được minh họa trong hình 4a:
a b
Hình 4 Bounding box and Centroid of Current Frame Hội Thảo Quốc Gia 2015 về Điện Tử, Truyền Thông và Công Nghệ Thông Tin (ECIT 2015)
Trang 3Hội Thảo Quốc Gia 2015 về Điện Tử, Truyền Thông và Công Nghệ Thông Tin (ECIT 2015)
Như được minh họa trong hình 4b, khoảng cách d1 (khoảng
cách từ tọa độ trọng tâm trước đó tới khối của cá) ngắn hơn
khoảng cách d2 (khoảng cách từ tọa độ trọng tâm trước đó tới
khối của bóng) Bằng cách áp dụng phương pháp này, vấn đề
bóng xuất hiện được giải quyết một cách hiệu quả
Một vấn đề của GMM cần được giải quyết là tại những
khung hình đầu tiên của video, sự ước tính hình nền chưa được
hoàn thành Điều này làm cho vị trí của cá không được phát
hiện đúng Vấn đề càng nghiêm trọng hơn khi cá không di
chuyển trong những khung hình đầu tiên này Thuật toán
Frame-Differencing, như được trình bày trước, không hiệu quả
bởi vì không có vị trí của cá trong khung hình trước đó Do đó,
thật cần thiết để khởi tạo vị trí ban đầu cho cá tại khung hình
đầu tiên Trong phương pháp được đề xuất này, bước khởi tạo
được thực hiện bằng cách vẽ một đường bao quanh cá
(Bounding Box) Sau đó, trọng tâm của cá đạt được bằng cách
tính trọng tâm của hình chữ nhật đó Bước khởi tạo được minh
họa trong hình dưới đây:
Hình 5 Bước khởi tạo
C Chi tiết thuật toán
Sơ đồ thuật toán được trình bày phía dưới cho thấy sự bổ
sung cho nhau của GMM và Frame-Differencing Sự thực thi
của phương pháp này sẽ được trình bày trong phần III
Hình 6 Sơ đồ thuật toán CGMMFD
III KẾT QUẢ THỰC NGHIỆM VÀ PHÂN TÍCH
Phần này tập trung miêu tả các tiêu chí được sử dụng cho
phần đánh giá Cụ thể, phần III.A miêu tả việc xây dựng
Ground Truth Ground Truth sẽ bao gồm đầy đủ các trường
hợp, tình huống khác nhau Sau đó, hai số liệu thống kê quan
trọng là Mean Square Error (MSE) và Phương sai (Var) được giới thiệu: cách tính, lý do sử dụng và hai số liệu được sử dụng
để đánh giá sự thực hiện của các thuật toán như thế nào Tiếp theo, trong phần III.B là sự đánh giá năm thuật toán bám đuổi
và những kết luận được rút ra Loài cá được sử dụng trong bài báo này là cá ngựa vằn Các đoạn phim về cá ngựa vằn được quay lại dưới định dạng avi trong khoảng thời gian 10 giây Tốc độ quay là 15 khung hình trên giây Kích thước khung hình là 640x480 Nước được sử dụng là nước sinh hoạt được thêm vào chất ô nhiễm với các nồng độ khác nhau
A Phương pháp đánh giá
Trong đề tài này, nhóm nghiên cứu đánh giá chất lượng của thuật toán Phát hiện và Bám đuổi cá bằng cách so sánh kết quả bám đuổi từ các thuật toán với bộ dữ liệu Ground Truth tương ứng Do vậy, bộ dữ liệu này phải được xây dựng trước cho tất
cả các video Sau đó, hai đại lượng phổ biến trong thống kê là Mean Square Error (MSE) và Phương sai (Var) được chọn để đánh giá các kết quả
1) Cơ sở dữ liệu Ground Truth
Để có thể đánh giá được các phương pháp Phát hiện và Bám đuổi cá, chúng ta có thể so sánh quỹ đạo của kết quả bám đuổi với dữ liệu Ground Truth đã được xây dựng từ trước Do
đó, việc xây dựng bộ dữ liệu này là một phần thiết yếu trong đề tài nhằm đánh giá được chất lượng các thuật toán Ở đây, các video được chọn dựa trên sự xuất hiện của bộ kết hợp các tình huống điển hình trong đề tài Thông qua việc đánh giá chất lượng bám đuổi cá theo các tình huống trên, chúng ta có thể kiểm nghiệm tính hiệu quả của mọi thuật toán khi phải giải quyết các tình huống khác nhau, từ dạng thông thường đến những dạng tình huống lạ Cụ thể, mỗi video sẽ là sự kết hợp giữa các tình huống có thể xảy ra như màu sắc của cá (Fish Color), Nồng độ (Concentration), Tốc độ bơi của cá (Velocity),
Số lượng bóng xuất hiện (Illusion), và Thứ tự mẫu video (Sample) tức là mỗi sự kết hợp này được quay 3 lần nhằm đảm bảo tính khách quan Bảng I dưới đây minh họa cho việc chọn các video theo tình huống vừa trình bày ở trên
BẢNG I: VIDEO TÌNH HUỐNG Fish Color Concentration Velocity Illusions Order
B (Black) C (Clean) F (Fast) 1 (Top) 1
O (Orange) P (Pollution) I (Immobile) 2 (Top-Right) 2
S (Slow) 3( Right) 3
4 (None)
Ví dụ, một tình huống video mà xuất hiện cá màu đen (B),
di chuyển chậm (S) trong môi trường nước sạch (C), không xuất hiện bóng của cá (4), và là mẫu video thứ nhất (1), sẽ được ký hiệu là BCS41 Các video tình huống khác được ký hiệu tương tự Theo Bảng 1, có thể có tổng cộng 2x2x3x4x3 =
144 video, chẳng hạn OPF11, OCI43, BPS33… Bộ dữ liệu thực nghiệm cho từng video được làm bằng tay, do đó, công việc này khó lòng thực hiện được với các video dài Nhóm nghiên cứu đã quyết định chỉ sử dụng các video có thời lượng
10 giây trong nghiên cứu này Sau khi đã xây dựng được bộ dữ liệu này, chúng ta có thể so sánh các kết quả bám đuổi cho từng thuật toán để có thể đánh giá một cách hiệu quả các thuật toán này Có được điều này là vì bộ dữ liệu thực nghiệm có tính chính xác cao, theo từng khung hình một
2) Tiêu chí đánh giá a) Mean Square Error
Hội Thảo Quốc Gia 2015 về Điện Tử, Truyền Thông và Công Nghệ Thông Tin (ECIT 2015)
Trang 4Chỉ số MSE được tính bằng công thức dưới đây:
∑( ) (8) với là tọa độ của trọng tâm cá phát hiện và bám đuổi
được ở khung hình thứ i, là tọa độ trọng tâm chuẩn được lấy
từ bộ dữ liệu Ground Truth ở cùng khung hình, và m là tổng số
khung hình trong video
Trong thống kê, chỉ số MSE cho biết trung bình của bình
phương lỗi sai, tức là độ khác biệt giữa kết quả với giá trị mong
muốn đạt được Trong trường hợp này, chỉ số MSE cho thấy độ
lệch (hoặc khoảng cách) từ tọa độ trọng tâm tính ra từ các thuật
toán với tọa độ chuẩn Nói chung, chỉ số MSE nhỏ đồng nghĩa
với việc ít xảy ra lỗi bám đuổi, tức là thuật toán cho kết quả tốt
Tuy nhiên, chỉ số này chỉ đánh giá trung bình các lỗi sai,
dẫn đến việc các sai số lớn ở một vài khung hình ảnh hưởng
nghiêm trọng tới chỉ số cuối cùng Chẳng hạn, trong khi hầu
hết các khung hình đạt kết quả bám đuổi tốt, với độ lệch vài
đơn vị, sự xuất hiện một sai số lớn trên 1000 đơn vị ở bất kỳ
khung hình nào sẽ tạo thành chỉ số MSE ở khoảng 1000 thay vì
chỉ vài đơn vị Điều này xảy ra là vì tổng số khung hình chưa
thật sự lớn, chỉ vào khoảng 150 khung hình cho 10 giây Dó
đó, chỉ số MSE không thể xác định thuật toán bám đuổi này
cho chất lượng tốt hơn thuật toán khác, nếu chỉ sử dụng MSE
Để giải quyết vấn đề này, nhóm nghiên cứu sử dụng thêm một
chỉ số khác, đó là Phương sai, để có thể đánh giá một cách tối
ưu hơn
b) Phương sai
Phương sai được tính bằng công thức:
∑( ̅) (9) với d là độ lệch (khoảng cách) giữa trọng tâm cá phát hiện
được với trọng tâm chuẩn từ bộ dữ liệu thực nghiệm, ̅ là giá
trị trung bình của d; m tổng số khung hình trong video
Phương sai (Var) cho thấy độ phân tán của lỗi sai Một giá
trị nhỏ của chỉ số này cho thấy lỗi sai tập trung rất gần nhau, và
gần giá trị trung bình của chúng Ngược lại, chỉ số phương sai
cao chỉ ra các lỗi sai rất phân tán Tóm lại, một thuật toán Phát
hiện và Bám đuổi đạt hiệu quả tốt nghĩa là nó phải cho thấy cả
hai chỉ số MSE và Var có giá trị thấp
B Kết quả đánh giá
Trong phần này, nhóm nghiên cứu sẽ trình bày các phân
tích và so sánh từ các kết quả của các thuật toán khác nhau cho
từng video tình huống một cách tổng quan Các video được
nhóm thành 4 nhóm theo các tiêu chí đặc trưng nhằm tiện cho
việc phân tích như sau: Bình thường (Normal) là các video tình
huống mà cá bơi chậm, không có bóng, Nhanh (Fast) các video
mà cá bơi với tốc độ nhanh, Bất động (Immobile) là các tình
huống mà cá không di chuyển, Bóng (Illusion) các video có sự
xuất hiện bóng của cá Trong sự đánh giá tổng quan này, các
chỉ số MSE và Var được lấy từ kết quả trung bình cho các
video trong nhóm Bảng II minh họa cho các giá trị trung bình
của MSE và Var đối với 5 thuật toán khác nhau là Ước lượng
nền trung bình (MB), GMM, Mean Shift (MS), Lọc Particle
(PF) và thuật toán được đề xuất (CGMMFD) tương ứng với
từng nhóm video
BẢNG II: HIỆU SUẤT HỆ THỐNG
MFD
Immobi
le MSEVar 38351.0 116607.13180.4 3358.8 198.958.3 256.215.6 120.228.4
Từ bảng trên, ta thấy rằng thuật toán nhóm nghiên cứu đề xuất (CGMMFD) cho giá trị thấp hơn trong 5 thuật toán cho hầu hết các nhóm video Vì vậy, thuật toán này có thể giải quyết tốt các tình huống có thể xảy ra trong nghiên cứu này Trong khi CGMMFD cho kết quả MSE và Var thấp một cách
ổn định, các thuật toán khác có thể tốt cho một vài tình huống nhưng lại không tốt cho các tình huống khác
Phần tiếp theo của bài báo sẽ trình bày về kết quả và phân tích chi tiết cho từng nhóm tình huống Một điểm đáng lưu ý là trong những biểu đồ dưới đây, các chỉ số được hiển thị ở dạng log của các kết quả MSE và Var Bởi vì các giá trị này thay đổi
từ vài đơn vị cho tới hàng trăm nghìn đơn vị, gây khó khăn cho việc hiển thị trên biểu đồ
1) Nhóm video Bình thường
Trong các video này, cá bơi với vận tốc chậm, và không thay đổi vận tốc đột ngột Bóng của cá cũng không xuất hiện trong các video này Kết quả chi tiết được hiển thị ở Hình 7 và Hình 8 dưới đây
Hình 7 MSE của nhóm video Bình thường
Hình 8 Phương sai của nhóm video Bình thường Trong nhóm video này, MB là thuật toán cho kết quả MSE
và Var tốt nhất Trong khi đó, 4 thuật toán còn lại không cho thấy một ưu thế đáng kể nào Kết quả này phản ánh đúng tính chất của các thuật toán ở trên Với sự di chuyển với tốc độ không thay đổi đột ngột và không có bóng, kết quả tạo nền trung bình sẽ cho kết quả tốt, hệ quả là việc phát hiện và bám Hội Thảo Quốc Gia 2015 về Điện Tử, Truyền Thông và Công Nghệ Thông Tin (ECIT 2015)
Trang 5Hội Thảo Quốc Gia 2015 về Điện Tử, Truyền Thông và Công Nghệ Thông Tin (ECIT 2015)
đuổi cá cho độ chính xác cao, MSE thấp nhất Lỗi sai chỉ xảy
ra khi cá đôt ngột bơi ngược hướng đang di chuyển, tạo thành
lỗi bám đuổi đối trong thời gian ngắn đối với bộ lọc Kalman
Trong Hình 8, Phương sai của mỗi thuật toán ứng với từng
video đặc trưng được chọn và hiển thị Kết quả Var trong nhóm
này cũng cho thấy chất lượng tốt của thuật toán MB, với chỉ số
thấp Ngược lại, thuật toán GMM lại cho kết quả tệ nhất trong
cả 5 thuật toán đối với cả chỉ số MSE và Var Trong khi đó kết
quả MSE và Var của CGMMFD cho thấy sự ổn định khi hầu
hết chỉ số ở các video nằm trong khoảng dưới 2 (tức 100 đơn
vị)
Tóm lại, thuật toán MB có thể xem là thuật toán phù hợp
nhất cho các video nhóm Bình thường, còn thuật toán
CGMMFD cũng cho thấy chất lượng bám đuổi ổn định và
tương đối tốt
2) Nhóm video Bất động
Khi cá nằm yên do tác động của độc chất trong môi trường
nước Các thuật toán Phát hiện và Bám đuổi cá gặp phải đồng
thời những thuận lợi và bất lợi Nhóm video này cũng bao gồm
các trường hợp mà cá di chuyển rất ít Kết quả chi tiết được
trình bày ở Hình 9 và 10
Hình 9 MSE của các video Bất động Kết quả MSE của thuật toán GMM và MB rất cao
(trên10000 đơn vị) cho thấy 2 thuật toán này không thể giải
quyết được tình huống xảy ra trong nhóm các video này Điều
này là do khi cá không di chuyển, hoặc di chuyển rất ít, thì
thuật toán GMM sẽ xem cá là nền và không thể trích xuất được
khối cá, dẫn đến sai số cực lớn và liên tục Tương tự, thuật toán
MB cũng không thể tạo ảnh nền chính xác, bởi vì trong thuật
toán này, ảnh nền được tạo ra phụ thuộc vào độ dài của video
và sự di chuyển của cá Kết quả là không thể phát hiện được cá
khi trừ nền, dẫn đến sai số khi bám đuổi Trong khi đó, kết quả
bám đuổi từ thuật toán Mean Shift, lọc Particle, và CGMMFD
lại đạt chất lượng khả quan hơn Với Mean Shift và lọc
Particle, hai thuật toán này có thể bám đuổi được chính xác hơn
bởi vì histogram [8],[9] trong các trường hợp này thay đổi rất
ít Bên cạnh đó, thuật toán được đề xuất CGMMFD cũng cho
kết quả MSE và Var thấp một cách tương đối ổn định nhờ có
bước khởi tạo cùng với phát hiện bất động
Hình 10 Phương sai của các video Bất động Hình 10 cho thấy giá trị Var từ các thuật toán có giá trị tương đối thấp, đặc biệt hơn, ở vài video tình huống, chúng có thể thấy được giá trị bé hơn 10 đơn vị (giá trị âm trên thang log) Điều này xảy ra chính là do cá hầu như không di chuyển, dẫn đến kết quả bám đuổi hầu như không cho lỗi sai đối với những thuật toán như MS, PF và CGMMFD Nhưng ở video
mã OPI21, chỉ số Var lại cao đột biến, lý do là vì ở video này,
cá có sự di chuyển đột ngột trong khoảng thời gian nhỏ sau một thời gian dài bất động, chính điều này gây ra sai lêch ở kết quả bước Phát hiện cá, làm cho thuật toán GMM có kết quả Var cao bất thường
Tóm lại, trường hợp Bất động của cá có thể được giải quyết tốt bằng cách dùng thuật toán Mean Shift, lọc Particle và CGMMFD, nhưng không thể là GMM hoặc MB
3) Nhóm video Nhanh
Trong các video này, cá di chuyển với vận tốc nhanh hơn bình thường, đồng thời, lúc di chuyển ra các cạnh của hồ, cá cũng gây ra các bóng ảnh ảo trên các khu vực này Tốc độ này của cá gây ảnh hưởng hầu như giống nhau đối với các thuật toán Hình 11 cho thấy, không có nhiều sự sai biệt ở kết quả MSE từ các thuật toán tương ứng với các video tình huống Thuật toán Mean Background cho kết quả khả quan trong các video này như đã đề cập từ trước: khi cá di chuyển nhanh, nền tạo ra cũng đạt chất lượng cao hơn, từ đó kết quả Phát hiện cá cũng tốt hơn Bên cạnh đó, cá di chuyển nhanh cũng tạo ra điều kiện thích hợp cho phương pháp Frame Differencing Vì thế, thuật toán CGMMFD cũng hiệu quả trong trường hợp này Trái lại kết quả MSE của Mean Shift và lọc Particle lại không tốt bằng Lý do là vì trong các video này, tốc độ của cá di chuyển nhanh, histogram thay đổi nhiều hơn, làm cho hai thuật toán này bám trượt trọng tâm của cá Nhưng nhìn chung thì hai thuật toán này vẫn có thể hữu dụng vì chúng cho giá trị MSE khá thấp, chỉ vào khoảng 100 trong hầu hết các video trong nhóm này
Như vậy, tốc độ cao của cá ảnh hưởng tương đối ít tới kết quả của các thuật toán kể trên Do đó, trong nhóm video này, không có thuật toán nào thật sự tối ưu hơn thuật toán nào Hội Thảo Quốc Gia 2015 về Điện Tử, Truyền Thông và Công Nghệ Thông Tin (ECIT 2015)
Trang 6Hình 11 MSE của các video nhanh
Hình 12 Phương của các video nhanh
4) Nhóm video có Bóng
Một điều hiển nhiên là sự xuất hiện của bóng (ảnh ảo của
cá) trong các video này ở trên mặt nước (trường hợp 1), góc
bên phải bể cá (trường hợp 2) hay ảnh ở cả hai vị trí như trên
(trường hợp 3), đều làm tăng chỉ số MSE và Var một cách đáng
kể Các loại bóng này ảnh hưởng nghiêm trọng nhất đến thuật
toán Mean Shift và lọc Particle, bởi vì các bóng này làm sai
lệch kết quả histogram ở hai thuật toán này, từ đó gây ra sự
bám đuổi sai đối tượng, tức là thay vì bám theo cá thật thì hai
thuật toán này dễ dàng bị bám lệch sang bóng cá
Hình 13 MSE cho các video có bóng
Bên cạnh đó, trong trường hợp 3 của bóng cá, MSE và Var
của thuật toán MB cũng rất cao, bởi vì xuất hiện đến 3 bóng
của cá, tạo ra sự xác định sai lệch về đối tượng để bám đuổi
tương tự như trường hợp của thuật toán Mean Shift và lọc
Particle
Tuy nhiêm, ở trường hợp xuất hiện bóng cá này, thuật toán được đề xuất CGMMFD vẫn cho kết quả MSE và Var có thể chấp nhận được, với giá trị tương đối thấp
Nói chung, trường hợp nhóm video có sự xuất hiên của bóng cá thì chỉ số MSE và Var có xu hướng tăng với tất cả năm thuật toán Tuy nhiên, thuật toán CGMMFD có lợi thế hơn nhờ
độ đơn giản của thuật toán, và tính ổn định kết quả MSE và Var ở tất cả cá video
Hình 14 Phương cho các video có bóng
IV KẾTLUẬN Trong nghiên cứu này, chúng to đã nâng cao chất lượng của việc Phát hiện và Bám đuổi cá bằng cách khai thác thuật toán GMM và bộ lọc Kalman, cùng với Frame-Differencing Sau khi xây dựng thuật toán trên, chúng tôi cũng đã tiến hành kiểm thử chất lượng bằng hai chỉ số là MSE và Var được tạo ra từ thuật toán đề xuất CGMMFD cùng với bốn thuật toán khác Kết quả cho thấy, thuật toán chúng tôi đề xuất cho kết quả khả quan trong việc Phát hiện và Bám đuổi cá nhờ cho ra giá trị MSE và Var thấp Có được điều này là vì thuật toán này bao gồm hai thuật toán khác nhau nhưng có thể bổ sung cho nhau một cách hợp lý là GMM và FD Tuy nhiên, phương pháp này vẫn chưa thể giải quyết việc Phát hiện và Bám đuổi cá ở môi trường thời gian thực vì nó cần ảnh của các khung hình kế tiếp
Do đó, trong những nghiên cứu tiếp theo, nhóm sẽ tập trung tìm ra những cách kết hợp khác hiệu quả hơn, nhằm nâng cao chất lượng của việc Phát hiện và Bám đuổi cá một cách ổn định
và hiệu suất cao hơn
LỜICẢM ƠN Nghiên cứu này được hỗ trợ chính thức bởi Bộ Khoa học
và Công nghệ, nằm trong dự án nghiên cứu cấp bộ năm
2014-2015 Nhóm nghiên cứu cũng xin chân thành cảm ơn nhóm nghiên cứu TRT3DCS của trường ĐH Bách Khoa Đà Nẵng trong quá trình nghiên cứu này
THAM KHẢO [1] Vinaykumar, M.,Jatoth, R.K " Performance evaluation of Alpha-Beta and Kalman filter for object tracking." (2014)
[2] Fier, R., Albu, A.B., Hoeberechts, M., " Automatic fish counting system for noisy deep-sea videos", 14-19 Sept 2014, pp 1-6.
[3] Stauffer, C., Grimson, W (1999) “Adaptive Background Mixture Models for Real-Time Tracking” IEEE Computer Society Conf on Computer Vision and Pattern Recognition, 246-252
[4] Ramsey Faragher (September, 2012) “Understanding the Basis of the Kalman Filter Via a Simple and Intuitive Derivation”.
[5] C Ridder, O Munkelt, and H Kirchner, “Adaptive background estimation and foreground detection using Kalman filtering”, In Proc
ICAM, 1995
Hội Thảo Quốc Gia 2015 về Điện Tử, Truyền Thông và Công Nghệ Thông Tin (ECIT 2015)
Trang 7Hội Thảo Quốc Gia 2015 về Điện Tử, Truyền Thông và Công Nghệ Thông Tin (ECIT 2015)
[6] Ning J., Zhang L., Zhang D., and Wu C.; (2010) “Robust Mean Shift
Tracking with Corrected Background-Weighted Histogram”
[7] Comaniciu D., Ramesh V., and Meer P.: “Real-Time Tracking of
Non-Rigid Objects Using Mean Shift” Proc IEEE Conf Computer Vision
and Pattern Recognition, Hilton Head, SC, USA, June, 2000, pp
142-149
[8] K Nummiaro, E Koller-Meier, L V Gool “A Color-based Particle
Filter.” In First International Workshop on Generative- Model- Based
Vision, 2002
[9] M Fotouhi, A R Gholami, and S Kasaei (2011) “Particle Filter-Based
Object Tracking Using Adaptive Histogram.”
[10] Singla Nishu.: Motion Detection Based on Frame Difference Method
International Journal of Information & Computation Technology
Volume 4, Number 15 (2014), pp 1559-1565
Hội Thảo Quốc Gia 2015 về Điện Tử, Truyền Thông và Công Nghệ Thông Tin (ECIT 2015)