Xây dựng thuật toán tự động phát hiện đối tượng trên nền ảnh động cho bệ quay quét giám sát an ninh
Tóm tắt: Hiện nay các hệ thống an ninh thường sử dụng các bệ pan-tilt nhằm
tăng cường phạm vi quan sát, tuy nhiên các camera chưa được tích hợp các chức
năng tự động phát hiện mục tiêu trên nền ảnh động. Trên cơ sở đó, bài báo nghiên
cứu, xây dựng thuật toán Adaboost và mô hình phân tầng Cascade tự động phát hiện
đối tượng trên nền ảnh động để ứng dụng cho các hệ thống giám sát an ninh, cảnh
báo, chống đột nhập
Bạn đang xem tài liệu "Xây dựng thuật toán tự động phát hiện đối tượng trên nền ảnh động cho bệ quay quét giám sát an ninh", để tải tài liệu gốc về máy hãy click vào nút Download ở trên
Tóm tắt nội dung tài liệu: Xây dựng thuật toán tự động phát hiện đối tượng trên nền ảnh động cho bệ quay quét giám sát an ninh
Nghiên cứu khoa học công nghệ Tạp chí Nghiên cứu KH&CN quân sự, Số Đặc san TĐH, 04 - 2019 261 XÂY DỰNG THUẬT TOÁN TỰ ĐỘNG PHÁT HIỆN ĐỐI TƯỢNG TRÊN NỀN ẢNH ĐỘNG CHO BỆ QUAY QUÉT GIÁM SÁT AN NINH Chu Văn Hoạt*, Vũ Minh Khiêm Tóm tắt: Hiện nay các hệ thống an ninh thường sử dụng các bệ pan-tilt nhằm tăng cường phạm vi quan sát, tuy nhiên các camera chưa được tích hợp các chức năng tự động phát hiện mục tiêu trên nền ảnh động. Trên cơ sở đó, bài báo nghiên cứu, xây dựng thuật toán Adaboost và mô hình phân tầng Cascade tự động phát hiện đối tượng trên nền ảnh động để ứng dụng cho các hệ thống giám sát an ninh, cảnh báo, chống đột nhập. Từ khóa: Tự động phát hiện; Hệ thống giám sát an ninh; Bệ pan-tilt; Adaboost . 1. ĐẶT VẤN ĐỀ Tự động phát hiện đối tượng là một trong những lĩnh vực nghiên cứu nhận được nhiều sự quan tâm của các nhà nghiên cứu, những nghiên cứu trước đây chủ yếu bao gồm các thuật toán phát hiện khuôn mặt [1-6], phát hiện phương tiện giao thông [7], phát hiện đối tượng chuyển động [8-9], ... Nó có vai trò quan trọng trong các hệ thống trinh sát phát hiện mục tiêu, giám sát an ninh, nhận dạng đối tượng và các hệ thống thị giác máy tính khác. Việc sử dụng thị giác máy tính để phát hiện các đối tượng là một trong những giải pháp được sử dụng rộng rãi. Phương pháp này ứng dụng các kỹ thuật xử lý ảnh để trích xuất các đặc trưng, sau đó kết hợp với các thuật toán máy học để tìm các đối tượng trong các hình ảnh. Tuy nhiên, việc phát hiện đối tượng dựa trên thị giác máy tính vẫn là một vấn đề khó. Hệ thống camera giám sát an ninh ngày càng được sử dụng một cách rộng rãi với mục đích hỗ trợ bảo vệ cho các khu vực như căn cứ quân sự, hải cảng, công ty, ngân hàng,.. Các camera thường được đặt trên các bệ pan-tilt có thể quay quét tự động để tăng phạm vi giám sát, vì thế các frame ảnh có nền thay đổi liên tục, gây khó khăn cho nhiệm vụ phát hiện đối tượng. Ngoài ra, đối với những camera thông thường chỉ có thể hoạt động trong môi trường có ánh sáng tốt, khó có thể làm việc hiệu quả trong điều kiện thời tiết khắc nghiệt, ánh sáng yếu. Tia hồng ngoại có thể phản ánh chính xác tính chất nhiệt của bề mặt vật thể, khi di chuyển ở hai quang phổ 3~5 m và 8~14 m không bị bầu khí quyển hấp thu [10], vì thế camera ảnh nhiệt lợi dụng tia hồng ngoại trong quang phổ này có thể làm việc hiệu quả trong mọi điều kiện ánh sáng, được sử dụng ngày càng nhiều trong các hệ thống an ninh. Tuy nhiên, chất lượng hình ảnh thu được thường không tốt như camera thường, hình ảnh tồn tại nhiễu và chịu ảnh hưởng lớn bởi nhiệt độ môi trường, vì thế cần phải nghiên cứu một thuật toán để tiến hành tự động phát hiện đối tượng. Bài báo này đã đề xuất sử dụng thuật toán Adaboost và mô hình phân tầng Cascade để xây dựng bộ phát hiện đối tượng trên nền ảnh động cho bệ quay quét giám sát an ninh sử dụng camera ảnh nhiệt. 2. THUẬT TOÁN TỰ ĐỘNG PHÁT HIỆN ĐỐI TƯỢNG 2.1. Lưu đồ thuật toán Quá trình phát hiện đối tượng thực chất là quá trình quét các cửa sổ trong ảnh và tiến hành phân loại các cửa sổ đó có chứa đối tượng hay không chứa đối tượng. Để Đo lường & Tin học C. V. Hoạt, V. M. Khiêm, “Xây dựng thuật toán tự động phát hiện giám sát an ninh.” 262 xây dựng bộ tự động phát hiện đối tượng, bài báo sử dụng thuật toán Adaboost và mô hình phân tầng Cascade dựa vào đặc trưng Haar Like, bao gồm hai quá trình: Quá trình huấn luyện bộ phân loại và quá trình phân loại. Lưu đồ thuật toán như hình 1 thể hiện: Hình 1. Lưu đồ thuật toán. Từ lưu đồ thuật toán cho thấy, quá trình huấn luyện bộ phân loại bao gồm các bộ phận chủ yếu như sau: Trích xuất đặc trưng Haar Like, lựa chọn bộ phân loại yếu và huấn luyện bộ phân loại phân tầng Adaboost. Quá trình phân loại sử dụng bộ phân loại đã được huấn luyện để tiến hành phân loại, phát hiện đối tượng. 2.2. Trích xuất đặc trưng Haar Like Lần đầu tiên, đặc trưng Haar Like được Papageorgiou [11] ứng dụng trong bài toán phát hiện khuôn mặt, hiện nay được sử dụng nhiều trong các bài toán phát hiện đối tượng, theo vết đối tượng... Nó phản ánh tình hình thay đổi giá trị xám trên ảnh xám, thể hiện được tri thức về các đối tượng trong ảnh thông qua việc phản ánh mối quan hệ giá trị xám giữa các bộ phận của đối tượng trong ảnh. Mỗi đặc trưng Haar Like chứa 2, 3 hoặc 4 miền hình học có màu “trắng” hoặc “đen”. Giá trị của một đặc trưng Haar Like chỉ đơn giản là sự khác biệt giữa tổng các giá trị xám của các pixel trong vùng “đen” với tổng các giá trị xám của các pixel trong vùng “trắng”. Để cân bằng giữa tốc độ xử lý và độ chính xác của thuật toán, bài báo đã sử dụng 4 mô hình đặc trưng Haar Like như hình 2. Hình 2. Mô hình đặc trưng Haar Like. Ta tính giá trị của đặc trưng Haar Like rất nhanh thông qua một cách thức được gọi là “ảnh tích phân” (Integral Image). Ảnh tích phân tại vị trí (x, y) có giá trị Nghiên cứu khoa học công nghệ Tạp chí Nghiên cứu KH&CN quân sự, Số Đặc san TĐH, 04 - 2019 263 bằng tổng các giá trị pixel nằm trong hình chữ nhật được xác định bởi góc trái trên là (0, 0) và góc phải dưới là (x, y). Từ đây, ta có thể tính được ngay tổng các giá trị pixel của một hình chữ nhật bất kỳ thông qua ảnh tích phân tại 4 đỉnh của nó (hình 3). Tổng các giá trị pixel của hình chữ nhật D như hình 2 là 4+1-(2+3). Sau khi trích xuất đặc trưng, sử dụng các đặc trưng này để lựa chọn các bộ phân loại yếu, sau đó xây dựng bộ phân loại mạnh có độ chính xác cao. Hình 3. Tính nhanh giá trị của hình chữ nhật D. 2.3. Nguyên lý thuật toán Adaboost Adaboost là một thuật toán được đưa ra bởi Freund và Schapire [12], được sử dụng rất phổ biến cho bài toán phát hiện đối tượng. Nguyên lý của Adaboost là gán cho mỗi ảnh mẫu một trọng số. Ở mỗi vòng lặp của quá trình huấn luyện, khi một bộ phân lớp yếu đã được xây dựng, ta sẽ tiến hành cập nhật trọng số cho các mẫu huấn luyện. Việc cập nhật này được tiến hành như sau: Tăng trọng số của các ảnh mẫu bị phân lớp sai bởi bộ phân lớp yếu và giảm trọng số của các ảnh mẫu được phân lớp đúng. Bằng cách này, ở vòng lặp kế tiếp, sẽ xây dựng bộ phân lớp yếu theo hướng: Tập trung vào các mẫu bị phân lớp sai bởi bộ phân lớp yếu trước đó. Cuối cùng, để có được bộ phân lớp mạnh, ta sẽ kết hợp tuyến tính các bộ phân lớp yếu đã tìm được lại với nhau. Mỗi bộ phân lớp yếu sẽ được đánh một trọng số tương ứng với độ tốt của bộ phân lớp yếu đó. Giả sử tập dữ liệu bao gồm n ảnh mẫu 1 1( , ),..., ( , )n nx y x y , trong đó {0,1}iy (i=1, 2, ..., n) lần lượt biểu thị ảnh mẫu không chứa đối tượng và ảnh mẫu chứa đối tượng. Mỗi ảnh mẫu bao gồm k đặc trưng, đối với ảnh mẫu thứ i, đặc trưng thứ j của nó là ( )j if x , (j=1, 2, ..., k). Để phát hiện được đối tượng, ảnh được quét bằng một cửa sổ con chứa một đặc trưng Haar Like. Ứng với một đặc trưng Haar Like jf , một bộ phân lớp yếu ( )jh x được cấu tạo bao gồm đặc trưng jf , ngưỡng j , hệ số quyết định chiều của phương trình jp , ( )jh x được biểu diễn như sau: 1 0 other j j j j j p f x < p h x (1) Trong đó, x là cửa sổ con đang xét. Các bước huấn luyện bộ phân loại của thuật toán Adaboost như sau: 1) Đặt ,t iw là trọng số của ảnh mẫu thứ i trong lần lặp thứ t. Khởi tạo trọng số của mỗi ảnh mẫu trong tập dữ liệu: Đối với ảnh mẫu có 0iy thì 1, 1 2 iw m ; Đối Đo lường & Tin học C. V. Hoạt, V. M. Khiêm, “Xây dựng thuật toán tự động phát hiện giám sát an ninh.” 264 với ảnh mẫu có 1iy thì 1, 1 2 iw l . Trong đó m, l lần lượt biểu thị số lượng của ảnh mẫu không chứa đối tượng và số lượng ảnh mẫu chứa đối tượng. 2) Quá trình dưới đây được lặp lại T lần, t=1, , T: a) Quy nhất trọng số: ,, ,1 t i t i n t jj w w w (2) Đối với mỗi đặc trưng j, cấu tạo bộ phân loại yếu jh , tìm ngưỡng j , sao cho tỷ lệ phân loại sai của jh nhỏ nhất, tỷ lệ phân loại sai được định nghĩa như sau: , 1 ( ) n j t i j i i i w h x y (3) b) Lựa chọn bộ phân loại yếu ht sao cho min , 1, 2,...,t j j k . c) Cập nhật trọng số của các ảnh mẫu: 11, , , 1 ie t t i t i t t t w w , nếu ảnh mẫu xi được phân loại đúng thì ie =0, ngược lại ie =1. Như vậy có thể đảm bảo tại vòng lặp tiếp theo, sẽ tập trung vào những ảnh mẫu bị phân loại sai này. 3) Cấu thành bộ phân loại mạnh. 1 1 1 1 ( ) ( ) 2 0 T T t t tt t h x h x other (4) Trong đó, 1 logt t 2.4. Mô hình phân tầng cascade Dùng thuật toán Adaboost để huấn luyện một bộ phân loại mạnh, sau đó dùng bộ phân loại mạnh quét toàn bộ ảnh đầu vào để phát hiện đối tượng. Tuy nhiên, cách làm này tốn thời gian xử lý. Giả sử, chúng ta có một bộ phân loại mạnh gồm 10 bộ phân loại yếu. Nếu làm như trên, tất cả các cửa sổ con trên tấm ảnh đều phải được quét qua tất cả 10 bộ phân loại yếu. Nhưng những cửa sổ thật sự chứa đối tượng thường rất ít và tại những cửa sổ không phải là đối tượng có thể được loại bỏ mà chỉ cần dùng một bộ phân loại mạnh đơn giản gồm ít hơn 10 bộ phân loại yếu. Vì thế cần phải huấn luyện nhiều bộ phân loại mạnh, sau đó sử dụng mô hình phân tầng Cascade liên kết chúng với nhau, tạo thành bộ phân loại có tính năng tốt hơn. Nguyên lý hoạt động của mô hình phân tầng Cascade như hình 4. Mỗi tầng là một bộ phân loại mạnh do thuật toán Adaboost huấn luyện ra, số lượng bộ phân loại yếu chứa trong mỗi bộ phân loại mạnh không giống nhau. Những bộ phân loại mạnh ở các tầng đầu tiên có kết cấu đơn giản, chứa ít bộ phân loại yếu, tốc độ xử lý nhanh, vì thế nó có thể nhanh chóng phân loại những cửa sổ có khác biệt lớn so với đối tượng. Những bộ phân loại mạnh ở các tầng sau có kết cấu phức tạp hơn, có chứa nhiều bộ phân loại yếu hơn, vì thế có thể phân loại được các cửa sổ gần giống với đối tượng, nhưng tốc độ xử lý chậm hơn. Nghiên cứu khoa học công nghệ Tạp chí Nghiên cứu KH&CN quân sự, Số Đặc san TĐH, 04 - 2019 265 Những cửa sổ được cho đi qua bởi bộ phân loại đầu sẽ được xử lý bởi bộ phân loại sau đó. Nếu bộ phân loại quyết định đó không phải là đối tượng thì loại bỏ; Nếu bộ phân loại quyết định đó là đối tượng thì lại cho đi qua và chuyển đến bộ phân loại phía sau, chỉ những cửa sổ đi qua được tất cả các bộ phân loại thì mới được quyết định đó là đối tượng. Hình 4. Nguyên lý hoạt động của mô hình phân tầng cascade. 2.5. Xây dựng tập dữ liệu Hiệu quả của thuật toán Adaboost được quyết định rất nhiều bởi quá trình lựa chọn bộ phân loại yếu trong khi huấn luyện, quá trình này phụ thuộc rất nhiều vào việc xây dựng tập dữ liệu, vì thế xây dựng tập dữ liệu để huấn luyện bộ phân loại có vai trò hết sức quan trọng, nó bao gồm tập hợp các ảnh chứa đối tượng và tập hợp các ảnh không chứa đối tượng. Tập hợp các ảnh chứa đối tượng bao gồm các vật thể lạ trôi nổi, người bơi, tàu thuyền, ... như biểu diễn trên hình 5. Tập hợp các ảnh không chứa đối tượng đã thông qua kiểm tra, xác nhận trong các ảnh mẫu không xuất hiện bất kỳ các đối tượng nào, như biểu diễn trên hình 6. Hình 5. Tập hợp các ảnh chứa đối tượng. Đo lường & Tin học C. V. Hoạt, V. M. Khiêm, “Xây dựng thuật toán tự động phát hiện giám sát an ninh.” 266 Hình 6. Tập hợp các ảnh không chứa đối tượng. Các ảnh trong tập các ảnh chứa đối tượng được tiến hành tiền xử lý, quy nhất độ xám nhằm giảm mức độ ảnh hưởng của nhiễu. Giả sử ảnh xám có số lượng pixel là N, như vậy ảnh này có phương sai độ xám như sau: 22 1 1 = N i i x N Trong đó, là giá trị xám trung bình của các pixel, ix là giá trị xám các pixel của ảnh ban đầu. Biểu thức quy nhất độ xám được biểu diễn: iii x x Trong đó, iix giá trị xám các pixel của ảnh sau khi tiến hành quy nhất. 3. KẾT QUẢ ĐẠT ĐƯỢC Video thử nghiệm được quay bởi camera ảnh nhiệt Orchid 640-P-C145 do Isarel sản xuất, có độ phân giải 640 480 , độ nhạy nhiệt nhỏ hơn 0.05℃. Bài báo sử dụng thuật toán Adaboost huấn luyện bộ phân loại gồm 15 tầng. Thuật toán tự động phát hiện mục tiêu được thử nghiệm trên nền tảng máy tính hệ điều hành window, Intel i7-6822EQ, 2.0GHz, RAM 8GB, ngôn ngữ lập trình C++, sử dụng thư viện Open CV 2.4.9. Máy tính được kết nối với bệ pan-tilt quay quét tích hợp với camera ảnh nhiệt. Kết quả thử nghiệm như thể hiện trên hình 6. Như kết quả thử nghiệm thể hiện, bộ phân loại có thể phát hiện được các đối tượng lạ xuất hiện trong video, Thuật toán do bài báo đề xuất có hiệu quả tốt trong nhiệm vụ phát hiện mục tiêu cho bệ pan-tilt quay quét tích hợp camera ảnh nhiệt. Thuật toán có tốc độ xử lý nhanh, đối với ảnh có độ phân giải 640 480 thì tốc độ xử lý lên tới 12frame/s, thử nghiệm trên ảnh có độ phân giải 320 240 thì tốc độ xử lý lên tới 40frame/s, đáp ứng được các yêu cầu của bài toán. Nghiên cứu khoa học công nghệ Tạp chí Nghiên cứu KH&CN quân sự, Số Đặc san TĐH, 04 - 2019 267 Hình 7. Kết quả thử nghiệm. 4. KẾT LUẬN Trong bài báo này chúng tôi xây dựng thuật toán tự động phát hiện đối tượng trên nền ảnh động để ứng dụng cho các hệ thống giám sát an ninh, cảnh báo, chống đột nhập. Kết quả thực nghiệm thu được đã chứng minh hiệu quả của thuật toán do bài báo xây dựng trong nhiệm vụ tự động phát hiện đối tượng, qua đó làm tiền đề cho việc áp dụng xây dựng các hệ thống giám sát an ninh, cảnh báo chống đột nhập. Lời cảm ơn: Nhóm tác giả cảm ơn sự đóng góp ý kiến của phòng KHQS, Bộ Tham mưu Hải quân giúp hoàn thiện bài báo này. Nghiên cứu này được hỗ trợ từ đề tài cấp bộ mã số 2016.85.059. TÀI LIỆU THAM KHẢO [1]. Viola P, Jones M, "Rapid object detection using a boosted cascade of simple features," Proceedings of the 2001 IEEE Computer Society Conference on IEEE Xplore, vol.1 (2001), pp. 511-518. [2]. Yang B, Yan J, Lei Z, et al, "Aggregate channel features for multi-view face detection," IEEE International Joint Conference on Biometrics (2014), pp. 1-8. [3]. Zhu X X, Ramanan D, "Face detection, pose estimation and landmark localization in the wild," IEEE Conference on Computer Vision and Pattern Recognition (2012), pp. 2879-2886. [4]. Viola P, Jones M, "Robust real time face detection," International Journal of Computer Vision, vol. 57, no. 2 (2004), pp. 137-154. [5]. Jones M, Viola P, "Fast Multi-view face detection," Proc of Computer Vision & Pattern Recognition, vol.11, no. 1 (2003), pp. 276- 286. [6]. Zhu X X, Ramanan D, "Face detection, pose estimation and landmark localization in the wild," IEEE Conference on Computer Vision and Pattern Recognition (2012), pp. 2879-2886. [7]. Malisiewicz T, Gupta A, Efros A A, "Ensemble of exemplar-SVMs for object detection and beyond," IEEE International Conference on Computer Vision (2011), pp. 1-8. [8]. Barnich O, Droogenbroeck M V, "ViBe: A Universal Background Đo lường & Tin học C. V. Hoạt, V. M. Khiêm, “Xây dựng thuật toán tự động phát hiện giám sát an ninh.” 268 Subtraction Algorithm for Video Sequences," IEEE Transactions on Image Processing, vol.20, no. 6 (2011), pp. 1709-1724. [9]. Van Droogenbroeck M, Barnich O, "ViBe: A Disruptive Method for Background Subtraction," Background Modeling and Foreground Detection for Video Surveillance (2014). [10]. Wallington T J, Sulbaek Andersen M P, Nielsen O J, "Relative integrated IR absorption in the atmospheric window is not the same as relative radiative efficiency," Proceedings of the National Academy of Sciences, vol.107, no. 48 (2010), pp. E178-E179. [11]. Papageorgiou C, Oren M, Poggio T, "A general framework for object detection," International Conference on Computer Vision IEEE Xplore (1998), pp. 555-562. [12]. Schapire R E, Freund Y, Bartlett P, et al, "Boosting the margin: A new explanation for the effectiveness of voting methods," The Annals of Statistics, Vol. 26, no. 5 (1998), pp. 1651–1686. ABSTRACT BUILDING AUTOMATIC DETECTING OBJECT ON THE ANIMATED BACKGROUND FOR THE TURNING PEDESTAL SECURITY MONITORING ALGORITHM Security systems are often using pan-tilt pedestals to increase the observational scope in these days. However, the camera has not integrated the auto-detection function on animated background yet. The paper suggests using Adaboost algorithm and Cascade stratified model to build an auto-detection system in order to apply to security monitoring, warning and intrusion. Keywords: Auto-detection, security monitoring, pan-tilt, Adaboost algorithm Nhận bài ngày 21 tháng 01 năm 2019 Hoàn thiện ngày 06 tháng 3 năm 2019 Chấp nhận đăng ngày 15 tháng 3 năm 2019 Địa chỉ: Viện Tự động hóa KTQS. * Email: sqchuhoat@gmail.com.
File đính kèm:
- xay_dung_thuat_toan_tu_dong_phat_hien_doi_tuong_tren_nen_anh.pdf