Các nhiệm vụ cụ thể của để tài - Nhiệm vụ 1: Ứng dụng các phương pháp xử lý ảnh để phát hiện và theo dõi đối tượng.. Trong để tài này, người thực hiện thiết kế một liệ thắng tín hiệu đ
Trang 1THÀNH PHÓ HÒ CHÍ MINH
HGMUIIE
ĐỎ ÁN TÓT NGHIỆP NGÀNH KỸ THUẬT ĐIỆN - ĐIỆN TỬ
UNG DUNG XU’ LY ANH DIEU TIET LUU LUONG GIAO THONG TAI NGA TU’
GVHD: NGUYEN DUY THAO
SVTH: HUYNH VO TUYEN
AA)
“ 14 U SKLC
TP Hồ Chí Minh, thang 01/2015
Trang 2
BỘ GIAO DUC VÀ ĐẠO TẠO
TRUONG DAI HOC SU PHAM KỸ THUẬT TP.HCM
KHOA ĐIỆN ĐIỆN TỬ
BỘ MÔN ĐIỆN TỬ CÔNG NGHIỆP
UNG DUNG XU LY ANH DIEU TIET LUU
LUONG GIAO THONG TAI NGA TU
GVHD: ThS Nguyén Duy Thao
SVTH: Huynh V6 Tuyén MSSV: 10101165
THU VIEN TRƯỜNG ĐHSPKT
s/¡9903450
L————- Thành phô Hô Chí Minh — 1/2015
Trang 31 Thông tin sinh viên
Họ và tên: Bùi Quang Huy MSSV: 10101049
Tel.: 0163 841 1992 Email: huymaketa@gmail.com
Ho va tén: Huynh V6 Tuyén MSSV: 10101165
Tel.: 0979 058 861 Email: hythuyenthoai92@gmail.com
2 Thong tin dé tai
“Tên của đề tài:
“ỨNG DỤNG XỬ LÝ ẢNH ĐIỀU TIẾT LƯU LƯỢNG
GIAO THÔNG TẠI NGÃ TƯ”
Mục dich của để tái:
Mục đích của đề tải xây dựng giải pháp hệ thống đèn giao thông có thể điều
tiết lưu lượng xe bảng cách thay doi chủ kỳ thời gian tín hiệu đèn giao thông theo
lưu lượng giao thông trên mồi 9 đường Tính toán tỷ lệ lưu lượng phương tiện
giao thông, từ đó tính thời gian đến đỏ cho mỗi tuyến đường qua video mà camera quan sát trên từng tuyến đường quay được
Thời gian thực hiện: Từ ngày / /2014 đến / /2015
3 Các nhiệm vụ cụ thể của để tài
- Nhiệm vụ 1:
Ứng dụng các phương pháp xử lý ảnh để phát hiện và theo dõi đối tượng
- Nhiệm vụ 2:
Tính toán và xây dựng phương pháp để đém được số lượng phương tiện đang
tham gia lưu thông
- Nhiệm vụ 3:
Xây dựng quy luật tính thời gian tín hiệu đèn giao thông
Trang 4
4 Lời cam đoan của sinh viên
Chúng tôi - Bùi Quang Huy và Huỳnh Võ Tuyến cam đoan ĐATN là công trình nghiên cứu của bản thân chúng tôi dưới sự hướng dẫn của thạc sỹ Nguyễn Duy
Thảo, có dựa trên luận văn thạc sỹ kỹ thuật của tác giả Phan Đình Trung, “Ứng
dụng xử lý ảnh cải tiến hệ thống điêu khiển tín hiệu giao thông tại nút giao thông”, năm 2012
Các kết quả công bố trong ĐATN là trung thực và không sao chép từ bất kỳ công
trình nảo khác,
Tp.HCM, ngày J tháng 0 01 năm 2015
SV thực hiện đồ án
(Kỹ và ghi rõ họ tên)
Bùi Quang Huy Huỳnh Võ Tuyến
Giáo viên hướng dẫn xác
Tp.HCM, ngay thang _ndm 2015 Xác nhận của Bộ Môn Giáo viên hướng dẫn
HÀ (Kỹ, ghỉ rõ họ tên và học hàm - học vị)
TS Aquyés Thanh Ha _ ——
Th.S Nguyén Duy Thao
Trang 5Tôi cam đoan đây là công trình nghiên cứu của tôi
Các số liệu, kết quả nêu trong luận văn là trung thực và chưa từng được ai công bố trong bắt kỳ công trình nào khác
Tp Hồ Chí Minh, ngày 0Ñ tháng 01 năm 2015
(Ký tên và ghi rõ họ tên)
Huỳnh Võ Tuyến
ii
Trang 6Em xin chân thành cảm ơn quý thầy cô trong bộ môn Điện Tử Công Nghiệp
da trang bj cho em kiến thức và giúp đỡ em giải quyết những khó khăn trong quá trình làm đồ án
Đặt biệt em xin chân thành cảm ơn Thầy hướng dẫn, Th.S Nguyễn Duy Thảo
đã tận tình giúp đỡ trong quá trình lựa chọn đề tài và hỗ trợ em trong quá trình thực hiện
Sinh viên
Huỳnh Võ Tuyến
Trang 7Thực trạng ùn tắc giao thông với nạn kẹt xe đang là một trong những vấn đề
nghiêm trọng về giao thông ở Việt Nam, đặc biệt là tại các thành phố lớn như TP
Hồ Chí Minh Bên cạnh cơ sở ha ting giao thông chưa đáp ứng, nguyên nhân quan
trọng do sự phân bố, điều tiết giao thông vẫn chưa hợp lý Tại các nút giao lộ, hệ
thống tín hiệu đèn giao thông chỉ có thể điều chỉnh bằng tay rất phức tạp Trong thực tế, rất cần giải pháp linh động trong việc điều chỉnh thời gian đèn tín hiệu để điều tiết lưu lượng giao thông hợp lý Điều này đảm bảo cho các tuyến đường cao
điểm đang đồng đúc và tắc nghẽn được ưu tiên Trong để tài này, người thực hiện
thiết kế một liệ thắng tín hiệu đèn giao thông, có thể tự điều chỉnh thời gian tín hiệu
đến giao thong wong chu ky hoạt động dựa vào lưu lượng xe được đếm và tính toán
Trang 8transportation in Vietnam, especially in big cities as the Ho Chi Minh City Besides
transport infrastructure has not respond, an important cause for the distribution,
regulate traffic is not reasonable In reality, the solution is calculated needed
flexibility to adjust the timing signals to regulate traffic flow reasonable This ensures rush roads are crowded and congested precedence At the intersection, the
system of traffic lights can only be adjusted by hand is very complexity In this project, the performed a system designed traffic lights, can adjust the timing of
traffic lights in operation cycle based on traffic flow is calculated by counting and
processing technology image processing The results counting when the vehicle
separated by a distance wilt
accuracy
Trang 9
TRANG TVA TRANG
LOI CAM DOAN
LOI CAM ON iii TOM TAT wa iV
Trang 10
2.2.2 Nguyên lý hoạt động ods
2.2.3 Ý nghĩa các màu đèn alt
2.2.4 Quy dinh diéu khién dén tín hiệt "`
Chương 3„, wd
VISUAL STUDIO VA THU VIEN OPEN CV UNG DUNG VAO XU LY ANH 9
3.1, Giới thiệu về Visual Stadio và thư viện open CV "`
3.1.1 Visual studio và ng lập trình C++ 2
3.2 Các thư viện và hàm s l§
3.2.1 Thư viện Boost C++ (16)
3.2.2 Thu vién cvBlob, OpenCVBlobsLib
3.2.3 Phuong phap background subtraction va thu viện BGSLibrary
3.2.4 Cmake[I1]
Chương 4
THUAT TOAN PHAT HIEN, THEO DOI VA PHUONG PHAP DEM
4.1 Tổng quan phương thức phát hiện đối tượng (phương tiện giao thông), theo dõi
Trang 12Bảng 6.1 Số lượng phương tiện giao thông, tỷ lệ lưu lượng và độ chính xác 48
ix
Trang 13HÌNH TRANG HÌNH CHƯƠNG 2
Hình 3.2 Cấu trúc cơ sở 4Z liệu của openCV [21]
Hình 3.3 Cac mau the —.,
Hình 4.1 Foreground mask, KLT tracking và Blob tracking [19]
Hình 4.2 Tiến trình xử lý phát hiện, theo dõi và đếm đối tượng .32
Hình 4.3 Liên kết header mã nguồn PixelBasedAdaptiveSegmenter.cpp 33
Trang 14
40
Hình 5.1 Sơ đồ tổng quan hệ thống điều tiết lưu lượng giao thông
Hình 5.2 Giai đoạn hệ thống xử lý đếm đối tượng
Hình 5.3 Hiển thị kết quả trên tuyến giao thông thứ nhất
Hình 5.4 Hiển thị kết quả trên tuyến giao thông thứ 2
Hinh 5.5 Thời gian tín hiệu đèn được hiệu chỉnh trong chu kỳ hoạt động 45
Trang 15Chương 1
TỎNG QUAN
1.1 Tổng quan về lĩnh vực nghiên cứu
Trên thế giới hiện nay, công nghệ xử lý ảnh số đã và đang được chú trọng
nghiên cứu và ứng dụng nhiều trong cuộc sống Một trong những ứng dụng của
công nghệ xử lý ảnh số đó là ứng dụng trong lĩnh vực giao thông Thông qua các
camera theo dõi gắn trên đường, người giám sát có thể quan sát được tình trạng giao
thông và điểu khiển giao thông Hiện nay, đã có luận văn: “ỨNG DỤNG XỬ LÝ
ANH CAI TIEN HE THONG DIU KHIBN DEN TIN HIBU GIAO THONG TAL
NUL GIAO THONG", nghitn ctu tac gid Phan Đình Trung, ứng dụng xử lý ảnh
wén Matlab [5] Chính vì vậy, chúng em chọn thực hiện dé tai “UNG DUNG XU’
LY ANH DIEU TIET LUU LUGG GIAO THONG TẠI NGÃ TƯ” với mục đích góp phân nâng cao, cải thién kha nang diéu tiết lưu lượng giao thông hiện nay
lưu lượng giao thông trên mỗi tuy én đường Tỉnh toán tỷ lệ lưu lượng phương tiện
giao thông, từ đó tính thời gian đèn đỏ cho mỗi tuyến đường qua video mà camera
quan sát trên từng tuyến đường quay được
1.3 Nhiệm vụ và giới hạn của để tài
1.3.1 Nhiệm vụ
~ Ứng dụng các phương pháp xử lý ảnh để phát hiện và theo đối đối tượng
- Tinh toán và xây dựng phương pháp để đếm được số lượng phương tiện đang tham gia lưu thông
~ Xây dựng quy luật tính thời gian tín hiệu đèn giao thông
Trang 16~ Xây dựng giao diện, mô phỏng hoạt động tín hiệu đèn giao thông
1.3.2 Giới hạn
- Xử lý dữ liệu từ video, chưa xử lý trực tiếp từ camera
- Chỉ thực hiện mô phỏng trên giao diện phần mềm
- Chạy trên hệ thống PC, nền tảng Windows, ngôn ngữ lập trình C++
1.4 Phương pháp nghiên cứu
Đề tài ứng dụng công nghệ xử lý ảnh, xây dựng và phát triển phần mềm trên
nên tắng Windows, với ngôn ngữ Visual C++, dé tài thực hiện phương pháp nghiên cửu trên lý thuyết và thực hiện xây dựng phần mềm trên thư viện mã nguồn mở và phát triển dựa trên dự án của Andrews Sobral.[10]
1.4.1, Phương pháp tham khảo tài liệu:
Thu thập dữ liệu lién quen:
ø Visual C++ [13], giao dién Windows Form UI application.[7]
¢ Thu vién Boost.[16]
1.4.2 Phương pháp thực hành:
Xây dựng giải pháp bằng Visual Studio với dự án và giao diện pầằn mềm ứng,
dụng Windows Form UI sử dụng ngôn ngữ C++, được xây dựng và phát triển trên
thư viện C++ mã nguồn mở
Trang 171.5 Tóm tắt đề tài
Như vậy, với các yêu cầu về nhiệm vụ và mục tiêu để ra, luận văn được xây dựng bao gồm các chương sau:
- Chương 1: Tổng quan Chương này trình bày khái quát về lĩnh vực nghiên
cứu, tình hình nghiên cứu, tằm quan trọng, để người người thực hiện đề tài đặt
Trang 18Chương 2
CƠ SỞ LÝ THUYÉT
2.1 Cơ sở lý thuyết về xử lý ảnh số
2.1.1 Khái niệm cơ bản
Ảnh tĩnh: tập hợp các điểm ảnh, được biễu diễn dạng ma trận hai chiều với các điểm ảnh (pixel) được xác định một tọa độ 1(x,y), mang mức xám xác định.[4]
Má trận ảnh M hàng N cột:
10,1) +> 1(,N) ly) m| 1 * i (2.1)
1(M,1) => 104,N)
l(x,y): giá trị mức của Si¢rn anh tai vi tri (x,y)
Chuéi anh! tap hop wi
1(xy,t) Trong đó t là biến #
Điểm anh (Picture Element): Diém ảnh (Pixel) là một phần tử của ảnh số tại
toạ độ (x, y) với độ xám hoặc màu nhất định Kích thước và khoảng cách giữa các
Trang 19điểm ảnh đó được chọn thích hợp sao cho mắt người cảm nhận sự liên tục về không
gian và mức xám (hoặc màu) của ảnh số gần như ảnh thật Mỗi phần tử trong ma trận được gọi là một phần tử ảnh
Ảnh nhị phân (Binary Images): Trong một ảnh nhị phân, mỗi pixel chỉ có thể
chứa một trong hai giá trị nhị phân 0 hoặc 1, tương ứng hai màu trắng và đen Một
ảnh nhị phân được lưu trữ như một mảng logic của 0 và 1.[2]
Mức xám của ảnh:
Mức xám: Là kết quả của sự biến đổi tương ứng I giá trị độ sáng của 1 điểm
ảnh với [ giá trị nguyên dương Thông thường nó xác định trong [0, 255] tuỳ thuộc
vào giá trị má mỗi điểm ánh được biểu diễn
Các thang giá trị mức xám thông thường: 16, 32, 64, 128, 256 (Mức 256 là
+ máy tính ding 1 byte (8 bit) dé biểu diễn mức n:2°=256 mức, tức là từ 0 đến 255)
và đồ hoạ phát triển một cách m¿z° rẽ và có nhiều ứng dụng trong cuộc sống Xử
lý ảnh là một trong những mang quan trong nhất trong kỹ thuật thị giác máy tính,
đóng một vai trò quan trọng trong tương tác người máy, tiền đề cho nhiều nghiên cứu thuộc lĩnh vực này Hai nhiệm vụ cơ bản của quá trình xử lý ảnh là nâng cao
chất lượng thông tin hình ảnh và xử lý số liệu cung cấp cho các quá trình khác trong
ứng dụng thị giác vào điều khiển.[1]
Trang 20Hình 2.4 Các thành phân cơ bản trong hệ thống xử lý ảnh đa dụng
~ _ Cảm biến thu nhận hình ảnh: thiết bị cảm biến có độ nhạy với năng lượng bức xạ bởi vật thể và hệ thống chuyển đổi tín hiệu thu nhận từ thiết bị
Trang 21~_ Phần mềm, ứng dụng xử lý: chương trình chuyên xử lý nhiệm vụ đặc
trưng đặc trưng Mã nguồn xây dựng sẵn giúp người dùng tạo modle riêng, tích hợp trong gói phần mềm đa dụng phức tạp
~ Bộ nhớ lưu trữ: cần quan tâm khả năng lưu trữ dữ liệu, phương pháp nén
đữ liệu Quản lý lưu trữ dữ liệu tạm thời phát sinh trong thời gian xử lý,
lưu trữ trực tuyến và lưu trữ cơ sở dữ liệu
~ _ Thiết bị hiển thị: Màn hình và các thiết bị có khả năng hiển thị lập thể
~_ Inắn: ghỉ lại hình ảnh bao gồm máy in, máy chụp dạng phim, thiết bị đĩa quang, đĩa nén
~_ Mạng; kết nối và truyền thông giữa các hệ thống máy tính, sự giới hạn
báng thông đát vấn đề cần quan tâm trong đáp ứng tốc độ truyền dữ liệu
Irong các ứng dung thực tế, việc phân tích và xử lý được hỗ trợ tối đa bởi
le, Việc xử lý, phát triển các ứng dụng thực tế
á¡ có sản đó không phải là việc dễ dàng Cần có
các nhà cung cấp như lntel ¢
được phát triển dựa trên nềš
thời gian nghiên cứu và ph
2.1.4 Không gian màu Gray
các mảu sắc chỉ là màu xám Lý do chuyển
Một ảnh mức xám chỉ đơn £
đổi màu sắc ảnh sang mức xám là iượng thông tin được cung cấp ít nhất cho mỗi điểm ảnh Thực tế một màu xám là do các thành phần đỏ, xanh lá cây và xanh
dương có mật độ bằng nhau trong không gian RGB, và vì nó cần để định rõ giá trị
mật độ đơn cho mỗi điểm ảnh trong khi ba mật độ cần để xác định cho mỗi điểm
ảnh trong một hình màu Một chuyển đổi thông thường từ RGB sang Gray là:
Thông thường, độ xám được lưu trữ dưới dạng số nguyên 8 bit với
256 màu xám khác nhau từ đen sang trắng Nếu các mức được phân phối như
nhau thì sự khác biệt giữa mức xám liên tiếp là tốt hơn đáng kể so với sự
nhận thức về mức xám của mắt người
Trang 22Ảnh xám vẫn còn rất phổ biến trong kỹ thuật ngày nay và thuật toán
xử lý ảnh, chúng hoàn toàn đủ đáp ứng cho các vấn đề ,Vì thế không cần sử
dụng xử lý ảnh màu khó khăn và phức tạp hơn Ví dụ, cho phát hiện hoặc
nhận dạng đối tượng như là khuôn mặt, sử dụng khai triển trị riêng của ảnh
phải được biểu diễn như ma trân đơn 2D vì thế ảnh mức xám thường được
dùng
2.1.5 Ngưỡng ảnh
‘Trong nhiều ứng dụng thị giác, nó rất hữu ích để có thể tách riêng các phần của hình ảnh tương ứng với đối tượng mà ta quan tâm, từ các vùng hình ảnh
tương ứng, với nền, Ngưỡng thường cung cấp một cách dễ dàng và thuận tiện để
thực hiện phân đoạn ni ¿ dựa trên cường độ khác nhau trong phan nổi và phần
nền của một tắm binh fóng thường ngưỡng có thể chia làm 2 loại: ngưỡng
ngưỡng có thể xác định cho hình ảnh để có thê phân cắt Đối với giá trị ngưỡng
đơn mỗi điểm ảnh được so sánh với ngưỡng nay và nếu cường độ của điểm ảnh cao hơn ngưỡng, điểm ảnh được thiết lập màu trắng (hay đen), đầu ra cũng
tương tự nếu nó thấp hơn ngưỡng, nó được thiết lap mau đen (hay trắng) Đối
với nhiều giá trị ngưỡng thì có một dải cường độ sáng được thiết lập màu trắng
trong khi vùng hình ảnh ngoài dải được thiết lập màu đen Thông thường
ngưỡng toàn cục với nhiều mức có thể được biểu điễn như sau:
su0~P t0"
Z: ngưỡng độ sang
(23)
Trang 23Đến năm 1920, đèn tín hiệu mới có đủ ba màu: xanh, đỏ, vàng, do sĩ quan
cảnh sát Williams Possi, sống tại thành phố Detroit sáng chế ra Năm 1923, Gerrette Morgan đã được nhận bằng phát mình đèn tín hiệu giao thông, mặc dù ông không phải người trực tiếp làm nên cuộc cách mạng đèn tín hiệu hiện đại
Hình 2.5 Tín hiệu giao thông tại ngã tư
2.2.2 Nguyên lý hoạt động
Đèn tín hiệu thường hoạt động cả ngày, đến 0 giờ (12 giờ đêm) thì chuyển
sang trạng thái nháy vàng hoặc ngừng hoạt động Khi nháy vàng, xe cộ được đi và
phải chú ý, người đi bộ được phép sang đường Đến 6 giờ sáng ngày hôm sau đèn
lại hoạt động bình thường trở lại Đôi khi ở một vài ngã tư đông đúc, đèn tín hiệu có
thể hoạt động 24/24 mà không nháy vàng Khi hoạt động, đèn thường sáng màu
xanh, sau đó đến vàng và đỏ Sau một thời gian hoạt động, đèn lại chuyển xuống
màu xanh Đôi khi ở một số dao động, đèn vàng bật sau đèn đỏ
2.2.3 Ý nghĩa các màu đèn
Có 3 kiểu: xanh, vàng, đỏ Tác dụng như sau:
Trang 242.1.5.2 Ngưỡng thích nghỉ
2.2
Ngưỡng toàn cục dùng như là một ngưỡng cố định cho tất cả các điểm ảnh trong hình và do đó chỉ hoạt động nếu biểu đồ cường độ sáng của các hình ảnh đầu vào bao gồm những đỉnh được chia tương ứng để thiết kế đối
tượng và nền Do đó, nó không thể giải quyết với những thứ chứa trong hình,
ví dụ: một độ chênh lệch ánh sáng lớn Mặt khác, vùng ngưỡng thích nghỉ
chọn ngưỡng khác nhau cho mỗi điểm ảnh dựa trên tầm của giá trị cường độ
sáng trong vùng lân cận nó Điều này cho phép ngưỡng của một tắm hình mà biểu đồ cường độ toàn cục không bao gồm đỉnh phân biệt và là một kết quả
để giai quyết vẫn đề của sự thay đổi điều kiện ánh sáng trong hình
Có một vài cách cho việc tính toán vùng giá trị ngưỡng:
Theshold = meun or Theshold = median or theshold = ™#nt™az
vực cho mỗi điểm anh K
điểm ảnh nỗi và nên, đo đó một ngưỡng thấp sẽ được chọn Mặt khác, chọn
những vùng quá lớn có t5Ê +š phạm các giả định về khoảng chiếu sáng đồng
đều Trorig một số trường , giá trị ngưỡng thích nghỉ có thể được cải
thiện bằng cách trừ đi một giá trị không đôi từ giá trị trung bình mean — C Xem xét biểu đồ giá trị cường độ sáng ngưỡng thích nghỉ là ngoài phạm vi
luận văn này
Tổng quan về hệ thống điều khiển đèn giao thông
2.2.1 Lịch sử ra đời
Ra đời trước ô tô, đèn tín hiệu ban đầu chỉ dành cho tàu hỏa Lúc đầu, nó thắp
sáng bằng khí gas Sau 43 năm chúng chạy bằng điện nhưng vẫn cần người điều
khiển cho tới khi hoàn toàn tự động vào năm 1950 Ban đầu tín hiệu giao thông
chưa có đèn vàng và thay nó là chiếc còi hú vang khi cần
Trang 25- Đỏ: Khi gặp đèn đỏ, tất cả các phương tiện đang lưu thông phải dừng lại ở phía trước vạch dừng (trừ trường hợp những xe rẽ phải,) người đi bộ được
sang đường
- Xanh: Khi gặp đèn xanh, tất cả các phương tiện được phép đi và phải chú ý
Người đi bộ không được sang đường
~ Vàng: Đèn vàng là dấu hiệu của sự chuyển đổi tín hiệu
Khi đèn vàng bật sau đèn xanh nghĩa là chuẩn bị dừng, khi đó các phương tiện
phải dừng lại trước vạch sơn dừng vì tiếp đó đèn đỏ sẽ sáng, trường hợp đã vượt quá vạch đứng thì phải nhanh chóng cho xe rời khỏi giao lộ
Nếu đến văng hật sau đèn đỏ có nghĩa là chuẩn bị đi, người lái xe có thể đi
trước hoặc chuẩn bị đề đi vì tiếp đó đèn xanh sẽ sáng
Khi đèn vàng nhấp nhay @ tất cả các hướng nghĩa là được đi nhưng người lái
xe vẫn phải chú ý
2.2.4 Quy định điêu khiến đen tín hiệu
mg mau riéng biét, dén này tắt mới được bật đèn kia
a£ một lúc Giữa 2 chiều đường, khi chiều A bật
Đèn tín hiệu phải bật
lên, không được bật nhiều ma
đèn đỏ thì lập tức chiều B phải
đỏ và đỏ-xanh bắt buộc phải bật qua màu vàng, vì màu vàng đệm giữa 2 màu xanh
ngay dén xanh và ngược lại Khi chuyển từ xanh-
đỏ Khi bật đèn vàng thì phải bật sáng ở cả 2 chiều đường A và B
Trang 26Chương 3
VISUAL STUDIO VA THU VIEN OPEN CV UNG DUNG
VAO XU LY ANH
3.1 Giới thiệu về Visual Studio vỏ thư viện open CV
3.1.1 Visual studio vỏ ngừn ngữ lập trinh C++
3.1.1.1 Visual studio 2013 [22]
Hộ cừng cụ lập trớnh nỗi tiếng Visual Studio 2013 của Microsoft bao gồm 5
phan chinh; Visual Studio Ultimate 2013, Visual Studio Premium 2013, Visual
Studio Professional 2013, Visual Studio Test Professional 2013 va Visual Studio
Team Foundation Server 2013,
Microsoft Visual St ẻ4 một mới trường phõt triển tich hop (IDE) tir
Microsoft, duge str dung đờ phat triển chương trớnh mõy tợnh cho Microsoft Windows, cũng như cõc trang web, cõc ứng dụng web vỏ cõc dịch vy web Visual
Visual Studio bao gồm một trớnh soạn thảo code hỗ trợ IntelliSense cũng như
cải tiến mọ nguồn Trớnh gỡ lỗi tợch hợp hoạt động cả về trớnh gỡ lỗi mức độ mọ
nguồn vỏ gỡ lỗi mức độ mõy Cừng cụ tợch hợp khõc bao gồm một mẫu thiết kế cõc
hớnh thức xóy dựng giao diện ứng dụng, thiết kế web, thiết kế lớp vỏ thiết kế giản
đồ cơ sở dữ liệu, Nụ chấp nhận cõc plug-in nóng cao cõc chức năng ở hau hết cõc
cấp bao gồm thởm hỗ trợ cho cõc hệ thống quản lý phiởn bản (như Subversion) vỏ
bổ sung thởm bộ cừng cụ mới như biởn tập vỏ thiết kế trực quan cho cõc miền ngừn
ngữ cụ thể hoặc bộ cừng cụ dỏnh cho cõc khợa cạnh khõc trong quy trớnh phõt triển phần mềm
Trang 27Visual Studio hỗ trợ nhiều ngôn ngữ lập trình khác nhau và cho phép trình biên tập mã và gỡ lỗi để hỗ trợ (mức độ khác nhau) hầu như mọi ngôn ngữ lập trình
Các ngôn ngữ tích hợp gồm có C, C++ và C++/CLI (thông qua Visual C++),
VB.NET (théng qua Visual Basic NET), C thing (thong qua Visual C#) va F thang
(như của Visual Studio 2010) Hỗ trợ cho các ngôn ngữ khác như J++/J thăng,
Python và Ruby thông qua dịch vụ cài đặt riêng rẽ Nó cũng hỗ trợ XML/XSLT,
HTML/XHTML, JavaScript và CSS Microsoft cung cấp phiên bản "Express" la
phiên bản miễn phí của Visual Studio
3.1.1.2 Visual C++ [13]
Cái thiện hỗ trợ cho C / C++ theo tiêu chuẩn ISO:
- Ngôn ngữ cất løi (Core language)
- Thư viện mẫu chuấn
Cải thiện hiệu suất ứng dụng C++
Nâng cao cho phát triển ứng dụng Windows Store
3.1.2 Open CV
3.1.2.1 Tổng quan [12],[23]
OpenCV (Open Source Computer Vision Library) OpenCV là một thư viện
mã nguồn mở (open source) được phát hành theo giấy phép BSD, được phát triển
bởi tập đoàn Intel
10
Trang 28Thư viện có hơn 2500 các thuật toán tối ưu hóa, trong đó bao gồm một tập hợp toàn diện của cả hai cỗ điển và nghệ thuật thị giác máy tính và các thuật toán máy
học Các thuật toán này có thể được sử dụng để phát hiện và nhận diện khuôn mặt, nhận điện đối tượng, phân loại các hành động của con người trong video, các
camera theo dõi, theo dõi đối tượng chuyển động, trích xuất các mô hình 3D của các
đối tượng, tạo ra những đám mây điểm 3D từ máy ảnh stereo, khâu hình ảnh với nhau để tạo ra một độ phân giải cao hình ảnh của toàn bộ một cảnh, tìm hình ảnh
tương tự từ một cơ sở dữ liệu hình ảnh, loại bỏ mắt đỏ từ hình ảnh chụp bằng flash,
theo chuyển động của mắt, nhận ra cảnh quan và thiết lập dấu mốc để che phủ nó
voi Auginented Reality, OpenCV có hơn 47 nghìn người của người sử dụng cộng
đồng và ước tính số lượng tải vượt quá 7.000.000 Thu viện này được sử dụng rộng tài trong các công ty, các nhóm nghiên cứu và các cơ quan chính phủ
Cùng với cae cong 1
Intel, IBM, Sony, Honda,
ø như thành lập như Google, Yahoo, Microsoft,
có sử dụng thư viện, có rất nhiều phần khởi động,
như Ứng dụng Minds, Surf va Zeitera, ma lam cho str dung réng rai của
OpenCV Sử dung trie: ¿2 OpenCV kéo dài khoảng từ khâu phát hiện xâm
nhập trong video giám sá , giám sát thiết bị mỏ ở Trung Quốc, giúp robot
Garage, phat hiện các vụ tai nạn chết đuối hồ
đi chuyển và nhặt các đỗ vật ở \
bơi ở châu Âu, chạy nghệ thuật tương tác trong Tây Ban Nha và New York, kiểm
tra đường băng dành cho các mảnh vụn ở Thổ Nhĩ Kỷ, kiểm tra nhãn trên sản phẩm
tại các nhà máy trên toàn thế giới để phát hiện khuôn mặt nhanh chóng tại Nhật Bản
Thư viện được viết bằng ngôn ngữ C/C++, Python và giao diện Java hỗ trợ
trên các hệ điều hành như Linux, Windows va Mac OS, iOS va Android OpenCV
được thiết kế tận dụng MMX và SSE để nâng cao hiệu suất tính toán và nhắn mạnh
đến hệ thống thời gian thực và đầy đủ tính năng CUDA và giao diện OpenCL đang được tích cực phát triển Một điều tuyệt vời của OpenCV đưa ra một hệ thống đơn
giản, dễ sử dụng giúp mọi người nhanh chóng xây dựng các ứng dụng trong thị giác
11
Trang 29ấy: ĐỀ 8 one ell
máy, kê cả các hệ thông kiểm tra trong nhà máy, bức ảnh trong các lĩnh vực y học,
bảo mật, rô bôt học Nó chứa các lập trình xử lý ảnh rất đơn giản, kể cả khi thực
thi các hàm bậc cao như dò tìm khuôn mặt, theo dõi khuôn mặt, nhận dạng khuôn mặt, lọc Kalman
Kể từ khi được giới thiệu và sử dụng vào tháng | nam 1999, OpenCV đã được
sử dụng trong rất nhiều ứng dụng, các sản phẩm và các nghiên cứu Ví dụ như trong lĩnh vực hàng không vũ trụ, bản đồ web trực tuyến, sử dụng giảm nhiễu trong y học, phân tích đối tượng, an ninh, hệ thống dò tìm và cảnh báo, quản lý hê thống sản xuất, xử lý camera, ứng dụng trong quân sự, hàng không không người lái, trên mặt
đất và trên lâu ngẦm, Ngoài ra nó còn sử dụng trong nhận dạng âm thanh OpenCV
là một chia khóa quan trọng trong các rô bốt sử dụng thị giác máy như Stanford hay
Asimo của Nhật Bản
Hình 3.1 Quá trình phát triển của OpenCV [6]
Trén thế giới còn một số thư viện như Emugu CV nhưng phát triển trên
nền Cứ OpenCV được phát triển trên nén C va C++ thi sẽ dé dang cho những người mới tiếp cận hơn Emugu CV
3.1.2.2 Vì sao lựa chọn OpenCV?
Thị trường thị giác máy đang ngày càng mở rộng và lên tục phát triển,
Thu viện tiêu chuẩn sẽ tạo ra các ứng dụng mới và các giải pháp xử lý dễ
12
Trang 30dang hơn Đặc biệt tối ưu khi sử dụng cấu trúc Intel Tạo ra các mẫu ứng
dụng bằng các thư viện được cập nhật thường xuyên và thực hiện các thuật
toán nặng như dò tìm khuôn mặt Có rất nhiều công nghệ hiện đại và các
công ty lớn sử dụng thư viện OpenCV trong ứng dụng của mình như: Intel, Microsoft, IBM, Siemens, Google và các trung tâm nghiên cứu như:
Stanford, MIT, Cambridge, INRIA
Hon 14000 thành viên trên forum OpenCVyahoogroup.com với trung
bình một ngày có đến 10-20 thông điệp comment trao đổi hàng ngày
Điều đó khẳng định rằng OpenCV thực sự đã góp phần vô cùng lớn trong lĩnh vực thị giác máy
3.1.2.3 CẤu trúc và nội dung OpenCV [6|
Tổ chức thư viế: OpsnCV khá đơn giản bao gồm 4 module chính và 2 module mở rộng:
Hình 3.2 Cấu trúc cơ sỡ dữ liệu của openCV [21]
13
Trang 31> CXCORE: chứa các định nghĩa kiểu dữ liệu cơ sở, thực hiện các thuật
toán (phép tính ma trận, tính toán), hỗ trợ chuẩn dữ liệu XML, các thao tác vẽ chú thích Ví dụ, các cấu trúc dữ liệu cho ảnh, điểm và hình chữ nhật được định nghĩa trong <cx@pes.w> CXCORE cũng chứa đại số tuyến tính và
phương pháp thống kê, chức năng duy trì và điều khiển chuỗi Một số ít, các
chức năng đồ họa để vẽ trên ảnh cũng được đặt ở dây
> CV & CVAUX: hỗ trợ các chức năng cấp cao (nhận dạng khuôn mặt,
hiệu chỉnh camera), xử lí ảnh, phân tích chuyển động Trong đó:
- CV là module én định chứa các thuật toán về xử lý ảnh và định
kích cỡ camera Các chức năng hình họa máy tính cũng được đặt ở đây
CV&1/X chứa các chức năng thử nghiệm để đưa vào phiên bản
kế tiếp được m2 !á trong tài liệu của OpenCV như chứa các mã cũ
va thir nghiés “Tuy nhiên, các giao diện đơn cho sự nhận diện ảnh
ở trong module nay Code sau này chúng được chuyên dụng, cho
nhận dié:
> HIGHGUI va CVCAM duge đặt trong cùng thư mục là “otherlibs”
- HIGHGUI chứa các giao diện vào ra cơ bản, nó cũng chứa các
áng được ứng dụng rộng rãi cho mục đích đó
à vào ra video giúp tạo nhanh giao diện
khả năng cửa số mở rộng
đơn giản và hỗ trợ truy xuất anh/phim tir file hoặc thiết bị ngoại vi
- CVCAM chứa các giao diện cho video truy cập qua DirectX
trén nén Windows 32 bits
> Hai module con lai la MLL va IPP it duge sử dụng hon Module MLL (machine learning library) cung cấp khả năng tự học của thuật toán với chức
năng thống kê phân loại và các thuật toán phân nhóm IPP là module thương
mại cung cấp các đoạn mã mở rộng đã được tối ưu hóa cho phần cứng của
Tntel giúp tăng tốc các ứng dụng lớn
Kem theo thu viện là tài liệu hướng dẫn và các ví dụ mẫu thể hiện một
phần các chức năng của công cụ OpenCV
14
Trang 32Các chức năng của openCV tập trung vào thu thập ảnh, xử lí ảnh và các
thuật toán phân tích dữ liệu ảnh, bao gồm:
~_ Truy xuất ảnh và phim: đọc ảnh số từ camera, từ file, ghi anh va phim
ảnh số và các dữ liệu hỗ trợ cần thiết: ma trận, vector,
chuỗi, xâu và cây
~_ Xử lí ảnh căn bản: các bộ lọc có sẵn, tìm chỉ tiết cạnh, góc, chỉnh adi
màu, phóng to thu nhỏ, và hiệu chinh histograms
~_ Xử lí cầu trúc: tìm viễn, nhận chuyển động, thay đổi trong không gian 3D, đối chiếu bản mẫu, xắp xỉ các đơn vị hình học cơ sở - mặt phẳng, đa giác, ellipse, đường thẳng
Phân tích đữ liệu ảnh: nhận dạng thực thể, theo dõi các chỉ tiết và phần tích chị
- Tạo giáo đi thị ảnh, thao tác bàn phím, chuột, thanh
trượt để chink <A (nếu cần thiết các bạn có thể tự tạo thêm các
phím điều kh sua thao tác chuột, hoặc tích hợp thêm các thư
vién vé giao dién nh wx Widgets),
lên ảnh
- Chức nắng g
3.2 Các thư viện và hàm sứ dụng
3.2.1 Thw vién Boost C++ [16]
Boost tap hợp các mã nguồn thư viện C++, cung cấp hỗ trợ cho các nhiệm vụ
và cơ cầu như đại số tuyển tính, hệ số giả ngẫu nhiên, đa luồng, xử lý ảnh, biểu thức
thông thường và kiểm tra đơn vị Nó chứa hơn 80 thư viện cá nhân Các thư viện
phù hợp với thư viện chuẩn C++, 10 thư viện Boost có trong C++ Thư viện kỹ thuật
CC TRI ) và 11 tiêu chuẩn moi CH C++11 cũng bao gồm một số thư viện Boost
ngoài những từ TRI Nhiều thư viện Boost được đề xuất tiêu chuẩn hóa trong
C++17 Các giấy phép khuyến khích sử dụng Boost cho thương mại và phi thương
mại
15
Trang 33Boost hoạt động trên hầu hết các hệ điều hành hiện đại, bao gồm cả UNIX và
Windows biên thể Phân phối phô biển Linux và Unix như Fedora, Debian và
NetBSD bao gồm các gói Boost được xây dựng trước Boost cũng có thể đã có sẵn
trên máy chủ web nội bộ của tổ chức,
Thiết kế:
Các thư viện được nhằm vào một phạm vi rộng sử dụng C++ và lĩnh vực ứng
dụng Chúng bao gồm từ thư viện có mục đích chung như các thư viện con trỏ
thông minh, để hệ thống hoạt động trừu tượng như Boost FileSystem, đến thư viện chú yếu nhắm vào các nhà phát triển thư viện khác và tiên tiến, giống như các mẫu
Lap tink mets (MPL) va tén miền cụ thể ngôn ngữ (DSL) tạo (Proto)
“Tác giá có liên quan
Sáng lập bán đầu cia Boost vấn còn hoạt động trong cộng đồng bao gồm
Beman Dawes và Daviẻ A+zz:2ms Tác giả của nhiều cuốn sách viết về C++,
Nicolai Josuttis đóng góp zr: ‘a Boost trong năm 2001 Có các mailing lists
dành để tăng cường sử đụng !êz viện và phát triển thư viện, hoạt động vào năm
2014
3.2.2 Thư viện evBlob, OpenCVBIlobsLib
3.2.2.1 Thw vién cvBlob [15]
Thư viện cvBlob hỗ trợ cho lĩnh vực thị giác máy tính để phát hiện các khu
vực kết nối trong hình ảnh nhị phân kỹ thuật số cvBlob thực hiện phân tích thành
phần kết nối (còn được gọi là ghi nhãn ) và các tính năng khai thác
Trang 34Đồ án tốt nghiệp
- Theo déi blob Basic
~ Giao dign tuong ty nhu OpenCV
'Thử nghiệm cơ bản
Ễ
Hình 3.3 Các mẫu thử [15]
3.2.2.2 Thư viện OpenCVBlobsLib [14|
OpenCVBlobsLib là một ửư viện C++ trên cơ sở các cvblobslib, mục đích
nâng cấp thư viện cvBlobsLib cũ với các tính năng mới như việc sử dụng các đối
tượng Mat thay vì Ipllmage va hỗ trợ đa lõi Nó cho phép ghi nhãn, lọc, thu thập thông tin khi phân chia "zones" với các tính năng đồng nhất trong một hình ảnh Nó
sử dụng OpenCV và PThread để tăng hiệu suất Các thuật toán được sử dụng rất
hiệu quả với những hình ảnh lớn hoặc nhiều đốm màu và có thể trở nên nhanh hơn
khai thác các cấu trúc phần cứng đa nhân của CPU hiện đại
Danh sách ngắn gọn tính năng:
Hình ảnh nhị phân 8-connected khai thác thành phần labelling/blob
Lọc Blob (dựa trên kích thước và tính năng người dùng định nghĩa khác)
Đặc trưng Blob tính toán, ví dụ như:
TRỤ VIỆN TRƯỜNG ĐHSPSTT
In 17000343
Trang 35
~_ Trung bình và độ lệch chuẩn của các giá trị điểm ảnh trong các khu
vực được che phủ,
- Dién tích và chu vi
~ Hộp đóng khung hình,
- Chita hinh elip,
- Moments tinh toán
- Mau té ctia khu vuc blob,
OpenCVBlobsLib thém tinh nang:
Hỗ trợ đa lõi cho các giai đoạn khai thác
OpenCV 2.0 giao điện phù hợp
Blob gia nhap, cho phép khu vực riêng biệt được nhóm là một
3.2.3 Phương pháp background subtraction và thư viện BGSLibrary
3.2.3.1 Phương pháp background subtraction
Background subtrack lâ một phương pháp được sử dụng để xác định các đối tượng chuyển động trong một dòng video Đây là bước quan trọng đâu tiên trong
nhiều ứng dụng ở lĩnh vực thị giác máy tính và xử lý ảnh kỹ thuật số, bao gồm cả
giám sát video, chụp chuyển động của con người, và theo dõi lưu lượng giao
thông Hiệu suất của các ứng dụng của thuật toán BGS phụ thuộc mạnh mẽ vào
thay đổi ánh sáng, chuyển động nhỏ của các yếu tố nền, việc bỗ sung hoặc loại
bỏ
các chỉ tết trong nền và bóng do đi chuyển các đối tượng, các khu vực mà có một
sự khác biệt đáng kể trên một ngưỡng, giữa các hình ảnh đầu vào và hình ảnh của
dữ liệu tham chiếu (background), chỉ ra vị trí của các đối tượng quan tâm Tính
toán hiệu quả cũng ưu tiên cao như các ứng dụng này thường nhằm mục đích để
chạy trong hệ thống thời gian thực.[1§]
18
Trang 36Background subtrack, cdn duge goi là Foreground Detection, 1a một kỹ thuật
trong các lĩnh vực xử lý ảnh và thị giác máy tính trong đó tiền cảnh của bức ảnh
được chiết xuất để chế biến tiếp (nhận dạng đối tượng, ) Nói chung các khu vực
của hình ảnh quan tâm là đối tượng (người, xe hơi, văn bản, ) ở tiền cảnh của nó Sau giai đoạn tiền xử lý hình ảnh (có thể bao gồm hình ảnh giảm nhiễu, chế biến
sau như hình thái, ) đối tượng địa hóa là yêu cầu mà có thể sử dụng các kỹ thuật
này Background phép trừ là một phương pháp được sử dụng rộng rãi để phát hiện
đối tượng chuyển động trong video từ máy ảnh tĩnh Lý do căn bản trong cách tiếp
cần là việc phát hiện các đối tượng di chuyển từ sự khác biệt giữa các khung hình
hiện tại vá một hệ quy chiếu, thường được gọi là "hình nền", hay "mô hình nền"
Background tra yéu la thực hiện nếu các hình ảnh trong câu hỏi là một phần của
mot dong video, lBackgroun4 trừ cùng cấp tín hiệu quan trọng cho nhiều ứng dụng
trong máy tính tam nhin, 42 theo déi vi du giám sát hoặc người đặt ra dự toán Tuy
nhiên, trừ nền thường được ds một giả thuyết nền tĩnh mà thường là không áp dụng trong môi trường thực tế Với những cảnh trong nhà, phản ánh hoặc hình ảnh
hoạt hình trên màn hình dẫn # thay đôi nền Theo một cách nào đó, do gió,
mưa hay ánh sáng thay đổi “ng bởi thời tiết, nguồn gốc, phương pháp tĩnh có
khó khăn với những cảnh qử: trời.[L7]
Các mô hình phổ biến nhát để thực hiện phép trừ nên là xây dựng một mô hình xác định nền Vật thể chuyển động được phát hiện bằng cách nhận ra sự khác biệt
giữa khung hiện tại và mô hình nên này Thông thường, foreground mask được xây
dựng bằng cách phân loại bắt kỳ điểm ảnh như là từ một đối tượng di chuyển khi sự
khác biệt tuyệt đối là trên ngưỡng “Thuật toán BGS khác nhau trong cách xác định
và cập nhật các mô hình nền
19
Trang 37currentframe pene
Mặc dủ các thuật toán BGS đã khá chính xác, hậu xử lý là cần thiết để cải
thiện hiệu suất, Hậu xử lý c2 thể từ các thuật toán phát hiện bóng hoạt động ở mức
độ điểm ánh để ghi nhan thenh phan kết nối trong đó xác định các yếu tố cấp đối tượng Các kết quả hậu xử iý cá thế được sử dụng để trực tiếp nâng cao chất lượng
của phân đoạn mặt nạ nỗi và các phần hồi trở về các thuật toán BG§ để tạo điều
kiện cập nhật thong minh hơn c2 các mồ hình nền
BGSLibrary phat trién bai Andrews Sobral, cung cấp mã nguồn mở
framework C++ sử dụng để thực hiện phép trừ nền (BGS) Rất nhiều các thuật toán
đã được cung cấp và trích dẫn, chuyển thể từ các tác giả khác nhau Các mã nguồn được phát hành theo giấy phép GNU GPL v3, hoạt động trên Windows hoặc Linux Hiện nay thư viện có 36 thuật toán BGS (thuật toán PBAS đã được gỡ bỏ từ BGSLibrary vì nó được dựa trên thuật toán cấp bằng sáng chế Vibe), thư viện mã
nguồn mở cho mục đích sử dụng phi thương mại và học thuật Bất kỳ người dùng
20
Trang 38có thể tải về mã nguồn dự án mới nhất sử dụng SVN client Trong Windows, một
dự án thử nghiệm cho Visual Studio 2010 được cung cấp Một phiên bản thực thi của BGSLibrary có sẵn cho Windows 32 bit và 64 bịt Đối với người dùng Linux va
Mac, một Makefile có thể được sử dụng để biên dịch tất cả các file và tạo ra một ví
dụ thực thi Nếu bạn muốn sử dung BGSLibrary cho mục đích thương mại, bạn cần
liên hệ với các tác giả của phương pháp BGS mong muốn
BGSLibrary (an OpenCV C ++ Background Subtraction Library), Sobral, Andrews trong hi thao “IX Workshop de Visio Computacional” (WVC'2013), tai
Rio de Janeiro, Brazil, thang 6 nam 2013 Mét chuong về BGS§Library được xuất
bắn tony chm nang "Background Modeling and Foreground Detection for Video
¢ Weighted Moving Mean
¢ Weighted Moving Variance
Adaptive Background Learning
° Adaptive-Selective Background Learning
(1) Temporal Mean
(1) Adaptive Median of McFarlane and Schofield (1995)
#(1) Temporal Median of Cucchiara et al (2003) and Calderara et al (2006) (11) Sigma-Delta of Manzanera and Richefeu (2004)
Phương pháp Fuzzy cơ bản:
21
Trang 39Phuong phap “Simple Gaussian”:
° (1) Gaussian Average of Wren (1997)
* (3) Simple Gaussian of Benezeth et al (2008)
Phuong ph4p "Multiple Gaussians”:
+ Gaussian Mixture Mode! of Stauffer and Grimson (1999)
* Gaussian Mixture Model of KadewTraKuPong and Bowden (2001)
Phuong phap “Type-2 Fuzzy”:
+ (2) Type-2 Fuzzy GMM-UM of Baf et al (2008)
+ (2) Type-2 Fuzzy GMM-UV of Baf et al (2008)
+ (2) Type-2 Fuzzy GMM-UM with MRF of Zhao et al (2012)
+ (2) Type-2 Fuzzy GMM-UV with MRF of Zhao et al (2012)
Phương pháp đa đặc trưng (màu sắc, cấu trúc, đặc tính viền):
+ Texture BGS of Heikkila et al (2006)
+ (8) Texture-Based Foreground Detection with MRF of Csaba Kertész
(2011)
+ (4) Multi-Layer BGS of Jian Yao and Jean-Marc Odobez (2007)
22
Trang 40* (10) MultiCue BGS of SeungJong Noh and Moongu Jeon (2012)
+ (12) SUBSENSE of Pierre-Luc et al (2014)
(12) LOBSTER of Pierre-Luc and Guillaume-Alexandre (2014)
Phuong php “Non-parametric”:
+ (5) Pixel-Based Adaptive Segmenter (PBAS) of Hofmann et al (2012) (the PBAS algorithm was removed from BGSLibrary because it is based on patented algorithm ViBE)
+ GMG of Godbehere et al (2012)
+ (6) VuMeter of Goyat et al (2006)
* (7) KDE of Elgammal et al (2000)
+ (9) IMS of Momenico Bloisi and Luca Iocchi (2012)
Phương pháp không gian con
+ Eigenbackground / SL-PCA of Oliver et al (2000)
Phuong phap “Neural and neuro-fuazy":
* (3) Adaptive SOM of}
+ (3) Fuzzy Adaptive SO}
a and Petrosino (2008)
{addalena and Petrosino (2010)
M Chú thích tác giả và lời cảm ơn người có liên quan:
+ (0) Ngudn gốc từ OpenCV
* (1) Donovan Parks
+ (2) Thierry Bouwmans, Fida EL BAF and Zhenjie Zhao
+ (3) Laurence Bender
+ (4) Jian Yao and Jean-Mare Odobez
+ (5) Martin Hofmann, Philipp Tiefenbacher and Gerhard Rigoll
+ (6) Lionel Robinault and Antoine Vacavant