intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Phương pháp phát hiện người dựa trên vùng chuyển động

Chia sẻ: Hân Hân | Ngày: | Loại File: PDF | Số trang:6

59
lượt xem
3
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Mục tiêu của họ là phát triển phương pháp nhằm cố gắng nâng cao độ chính xác, hiệu suất hoạt động cũng như khả năng thích nghi với nhiều môi trường và tình huống. Trong bài báo này, tác giả sẽ trình bày một số phương pháp phát hiện đối tượng người trong video thông dụng hiện nay cùng với những ưu nhược điểm.

Chủ đề:
Lưu

Nội dung Text: Phương pháp phát hiện người dựa trên vùng chuyển động

Kỷ yếu kỷ niệm 35 năm thành lập Trường ĐH<br /> <br /> ng nghiệp Th<br /> <br /> ph m T<br /> <br /> h<br /> <br /> inh<br /> <br /> -2017)<br /> <br /> PHƢƠNG PHÁP PHÁT HIỆN NGƢỜI DỰA TRÊN<br /> VÙNG CHUYỂN ĐỘNG<br /> Trần Nhƣ Ý*, Nguyễn Văn Tùng, Ngô Dƣơng Hà<br /> Trường Đại họ<br /> <br /> ng nghiệp Th<br /> <br /> ph m T<br /> <br /> *<br /> <br /> Email: ytn@cntp.edu.vn<br /> TÓM TẮT<br /> <br /> Vấn đề phát hiện người trong video cũng như trong các thiết bị ghi hình đã được nghiên cứu bởi rất<br /> nhiều các nhà khoa học trên thế giới. Mục tiêu của họ là phát triển phương pháp nhằm cố gắng nâng cao<br /> độ chính xác, hiệu suất hoạt động cũng như khả năng thích nghi với nhiều môi trường và tình huống.<br /> Trong bài báo này, tác giả sẽ trình bày một số phương pháp phát hiện đối tượng người trong video thông<br /> dụng hiện nay cùng với những ưu nhược điểm. Bằng cách tách vùng chuyển động, tiếp theo là sử dụng<br /> phương pháp trích chọn đặc trưng LBP, Haar với bộ phân loại cascade để phát hiện người [1,2,3]. Dựa<br /> trên cơ sở lý thuyết này, tác giả đề xuất một thuật toán BS-CC (Background Subtraction-Cascade<br /> Classifier) với mục tiêu phát hiện người dựa trên vùng chuyển động. Kết quả thực nghiệm cho thấy<br /> phương pháp phát hiện dựa trên vùng chuyển động tối ưu hơn so với việc việc tính toán đặc trưng LBP<br /> trên tất cả các cửa sổ trong toàn khung ảnh, cho tất cả khung ảnh.<br /> Từ khóa: BS-CC, LBP, MB-LBP, Haar, AdaBoost, Cascade.<br /> 1. GIỚI THIỆU<br /> Để phát triển một phương pháp tổng quát tối ưu là rất khó khăn do vậy người ta đã tiếp cận theo<br /> nhiều hướng khác nhau với những ưu điểm, nhược điểm phù hợp cho một tình huống cụ thể nhất định.<br /> Vào năm 1996, T. Ojala và các đồng sự đã đưa ra bài toán nhận dạng mặt người bằng đặc trưng LBP [4].<br /> Tiếp theo, Paul Viola và đồng sự đã đề xuất bộ phân loại cascade này dựa trên thuật toán học AdaBoost<br /> [1]. Phương pháp trích chọn kết cấu của ảnh thành vector đặc trưng gọi là đặc trưng LBP được Daniel<br /> Maturana và các đồng sự đề xuất năm 2009 [5]. Tốc độ xử lý của các thuật toán phát hiện mặt người luôn<br /> là thách thức được đề ra. Bằng cách tách vùng chuyển động, tiếp theo là sử dụng phương pháp trích chọn<br /> đặc trưng LBP, Haar với bộ phân loại cascade để phát hiện người [1,2,3]. Tác giả đề xuất một thuật toán<br /> BS-CC với mục tiêu phát hiện người dựa trên vùng chuyển động nhằm rút ngằn thời gian xử lý hơn so với<br /> phương pháp phát hiện người bằng bộ phân loại cascade. Kết quả thực nghiệm cho thấy phương pháp<br /> phát hiện dựa trên vùng chuyển động tối ưu hơn so với việc việc tính toán đặc trưng LBP trên tất cả các<br /> cửa sổ trong toàn khung ảnh, cho tất cả khung ảnh.<br /> Phần còn lại của bài báo được tổ chức như sau: phần 2 tác giả trình bày những công việc liên quan,<br /> phần 3 tác giả trình bày thuật toán, phần 4 tác giả sẽ trình bày kết quả thực nghiệm, đánh giá và cuối cùng<br /> là kết luận lại vấn đề.<br /> 1. MỘT SỐ CÔNG VIỆC CÓ LIÊN QUAN<br /> Mẫu nhị phân cục bộ (Local Binary Pattern-LBP) là phương pháp trích chọn kết cấu của ảnh thành<br /> vector đặc trưng gọi là đặc trưng LBP. Ý tưởng ban đầu của phương pháp này được tác giả Ojala và các<br /> đồng nghiệp giới thiệu [4], ban đầu xử lý trên ảnh xám. Ví dụ với một điểm ảnh xét 8 điểm lân cận và sử<br /> dụng chính giá trị của điểm ảnh tại trung tâm để phân ngưỡng 8 giá trị lân cận. Kết quả tìm được một<br /> chuỗi bit nhị phân có chiều dài bằng 8 tương ứng với 8 điểm lân cận được định nghĩa theo thứ tự nhất<br /> định. Chuỗi bit sẽ được chuyển sang hệ thập phân và giá trị thập phân này thay thế giá trị ban đầu của<br /> 217<br /> <br /> Tr n hư<br /> <br /> g<br /> <br /> n ăn T ng<br /> <br /> g<br /> <br /> ư ng à<br /> <br /> điểm ảnh đang xét. Số điểm lân cận có thể được thay đổi bằng đại lượng bán kính. Hình 1.a mô tả quá<br /> trình tính toán LBP cho bài toán nhận dạng mặt người [5].<br /> <br /> ình . (a) Mô tả tính toán với bán kính 1 điểm ảnh và lấy mẫu 8 điểm lân cận,<br /> (b) Mô tả 9×9 MB-LBP.<br /> <br /> Ưu điểm của phương pháp LBP là có chi phí tính toán thấp, ổn định khi cường độ thay đổi đơn điệu<br /> và dễ mở rộng lên không gian nhiều chiều như ảnh màu trong hệ RGB. Tuy nhiên, nhược điểm của đặc<br /> trưng dựa trên gradient là, đầu tiên, gradient phác họa cường độ phân phối xung quanh điểm ảnh một cách<br /> khá thô do chỉ biểu thị bởi hai giá trị 0 và 1. Hai mức gradient giống nhau có thể thuộc hai đối tượng cục<br /> bộ khác nhau, do đó không rõ ràng. Thứ hai, thông tin về gradient không đủ biểu diễn cho các đối tượng<br /> trong trường hợp gặp môi trường phức tạp gây ra nhiễu.<br /> Trong MB-LBP [2], Hình 1b toán tử so sánh giữa các điểm ảnh đơn trong LBP đơn giản được thay<br /> thế bằng so sánh giữa các giá trị trung bình màu xám của tiểu vùng. Mỗi tiểu vùng là một khối hình<br /> vuông chứa các pixel lân cận. Chúng ta lấy kích thước của bộ lọc như một tham số và s × s biểu thị thang<br /> đo của toán tử MB-LBP (đặc biệt là 3×3 MB-LBP trên thực tế là LBP ban đầu).<br /> Phương pháp Haar là một cách trích chọn đặc trưng của ảnh phát triển dựa trên phương pháp sóng<br /> Haar (Haar wavelet) trong xử lý tín hiệu số do Alfred Haar công bố. Viola và Jones [1] đã đưa ra phương<br /> pháp tính toán đặc trưng của ảnh với tốc độ xử lý rất nhanh dựa vào kĩ thuật quy hoạch động gọi là ảnh<br /> tích phân. Các đặc trưng thay đổi màu theo chiều ngang và dọc được phát hiện rất tốt do đó phương pháp<br /> Haar thường được sử dụng để phát hiện khuôn mặt trực diện của người, bởi vì đặc tính chung của khuôn<br /> mặt là có một số vùng mắt và miệng tối hơn vùng trán và má theo chiều dọc, và vùng mũi thường sáng<br /> hơn hai má theo chiều ngang. Nhược điểm của phương pháp này là nó khá nhạy cảm với điều kiện ánh<br /> sáng. Đồng thời nó không tập trung trích chọn được các đặc trưng về hình dáng của vật thể.<br /> Bộ phân loại cascade này dựa trên thuật toán học AdaBoost [1], áp dụng cho cả việc chọn lựa các<br /> tập đặc trưng nhỏ và việc huấn luyện cho bộ phân loại. Mỗi đặc trưng trong tập các đặc trưng của một<br /> mẫu , một bộ học yếu được định nghĩa nhằm xác định hàm phân ngưỡng tối ưu sao cho tập mẫu được<br /> phân loại sai là nhỏ nhất. Bộ phân loại yếu<br /> vì thế bao gồm một đặc trưng<br /> , một ngưỡng và<br /> một biến chẵn lẻ đại diện cho dấu của bất đẳng thức.<br /> {<br /> Thuật toán AdaBoost có thể được mô tả chi tiết thành các bước sau:<br /> - Cho một tập các mẫu<br /> { } tương ứng cho ảnh<br /> là các ảnh và<br /> <br /> trong đó là nhãn của mẫu . Trong trường hợp này<br /> có chứa đối tượng người hay không.<br /> <br /> - Khởi tạo các giá trị trọng số<br /> tương ứng với<br /> trong đó<br /> là số ảnh không<br /> chứa người hay trường hợp âm (negative) và là số trường hợp dương (positive) hay số ảnh chứa người.<br /> - Lặp lại với<br /> <br /> :<br /> <br /> - Chuẩn hóa các trọng số để cho<br /> <br /> là một phân phối xác suất<br /> ∑<br /> <br /> + Với mỗi đặc trưng , huấn luyện bộ phân loại<br /> đơn. Sai số được đánh giá cho<br /> ∑<br /> 218<br /> <br /> chỉ được hạn chế để sử dụng cho một đặc trưng<br /> <br /> hư ng ph p ph t hiện người<br /> + Chọn bộ phân loại<br /> <br /> a tr n<br /> <br /> ng h<br /> <br /> với sai số<br /> <br /> n<br /> <br /> ng<br /> <br /> nhỏ nhất.<br /> <br /> + Cập nhật lại các trọng số:<br /> <br /> Trong đó<br /> <br /> nếu<br /> <br /> được phân loại chính xác, ngược lại bằng 1 và<br /> <br /> .<br /> <br /> - Bộ phân loại mạnh cuối cùng là<br /> {<br /> <br /> Với<br /> <br /> ∑<br /> <br /> ∑<br /> <br /> .<br /> <br /> Bộ phân loại cascade là tập hợp của nhiều bộ phân loại huấn luyện bởi thuật toán AdaBoost và điều<br /> chỉnh lại ngưỡng sao cho trường hợp phát hiện thiếu là thấp nhất. Tổng quát, ngưỡng thấp dẫn đến tỉ lệ<br /> phát hiện cao và do đó tỉ lệ phát hiện nhầm cũng cao.<br /> <br /> ình . Sơ đồ bộ phân loại cascade gồm 3 bộ phân loại đơn<br /> <br /> Bộ phân loại cascade có cấu trúc tương tự như một cây quyết định mà mỗi node là một bộ phân loại<br /> đơn. Bằng cách sử dụng bộ phân loại có cấu trúc như trên, quá trình phát hiện người sẽ được cải thiện về<br /> thời gian chạy do các ảnh chắc chắn không phải người sẽ có các đặc trưng rất khác biệt và có thể được<br /> phát hiện sớm từ các bộ phân loại đơn đầu tiên.<br /> 2. BÀI TOÁN BACKGROUND SUBTRACTION-CASCADE CLASSIFIER (BS-CC)<br /> Mô hình phát hiện đối tượng được cài đặt để giải quyết bài toán trong thời gian thực. Tín hiệu từ<br /> máy ghi hình sẽ được chuyển đến dưới dạng từng khung hình liên tiếp theo thời gian. Trong bài báo này,<br /> tác giả sử dụng các đoạn video đã được ghi lại sẵn để kiểm tra kết quả của thuật toán nhưng sẽ đọc từng<br /> khung hình và tính toán để mô phỏng trường hợp thực tế. Quá trình xử lý tổng quát có thể được mô tả<br /> bằng sơ đồ dưới đây:<br /> <br /> ình 3 Sơ đồ các bước xử lý tổng quát<br /> <br /> Tại thời điểm khung hình<br /> là một ảnh màu được đọc và xử lý phân đoạn tìm ra các đối tượng<br /> động. Để làm được điều này ta cần mô hình hóa nền bằng thông tin từ các khung hình trước đó. Tác giả<br /> xây dựng một cấu trúc dữ liệu hướng đối tượng để lưu trữ<br /> khung hình trước đó có tên là<br /> FrameProcessor.<br /> Bộ xử lý khung hình có các thuộc tính gồm số nguyên cho phép người dùng lựa chọn chính là số<br /> khung hình trước đó cần lưu lại; một cấu trúc hàng đợi<br /> lưu trữ<br /> khung hình; một ảnh cộng dồn<br /> và một ảnh nền<br /> được tính toán tại mỗi thời điểm . Cụ thể, gọi<br /> là khung hình<br /> tại thời điểm t trong đó<br /> là tọa độ của điểm ảnh,<br /> {<br /> } lần lượt là kênh màu đỏ, lục hoặc lam.<br /> Ta thực hiện xám hóa và được ảnh xám<br /> bằng công thức [6].<br /> 219<br /> <br /> Tr n hư<br /> <br /> Mặt nạ<br /> công thức:<br /> <br /> g<br /> <br /> n ăn T ng<br /> <br /> là một ảnh nhị phân chứa các vùng chuyển động tại thời điểm<br /> <br /> g<br /> <br /> ư ng à<br /> <br /> được tính bằng<br /> <br /> {<br /> Trong đó<br /> <br /> là một ngưỡng được định nghĩa ngay từ đầu. Ảnh nền<br /> <br /> được tính bằng:<br /> <br /> ∑<br /> Hàng đợi<br /> {<br /> điểm bằng cách gán<br /> cập nhật bằng cách trừ cho<br /> <br /> } chứa khung hình dưới dạng ảnh xám và sẽ được cập nhật tại thời<br /> ̅̅̅̅̅̅̅̅̅̅ và<br /> với<br /> . Tương tự ảnh cộng dồn<br /> cũng được<br /> và cộng cho .<br /> <br /> Mô hình phát hiện người được áp dụng trong các vùng chuyển động sau khi phân đoạn. Tác giả sử<br /> dụng phương pháp trích chọn đặc trưng LBP, Haar với bộ phân loại cascade để phát hiện người do đó đối<br /> tượng<br /> [1,2,5] được sử dụng, cùng với kết quả học máy cũng được cung cấp sẵn.<br /> Mỗi khi một đối tượng người được phát hiện trong video, ta cần lưu trữ các đặc trưng của đối tượng<br /> cho quá trình xử lý. Vì thế tác giả định nghĩa một cấu trúc dữ liệu đại diện cho người, là lớp đối tượng<br /> Human. Trong lớp đối tượng này tác giả định nghĩa một biến quyết định lưu lại số khung hình liên tiếp<br /> mà đối tượng được phát hiện bằng bộ phân loại. Biến này đóng vai trò xác định đối tượng có thực sự là<br /> người hay chỉ là một phát hiện nhầm.<br /> 3. KẾT QUẢ THỰC NGHIỆM<br /> Tập dữ liệu kiểm tra gồm 10 video mà tác giả lấy từ bộ dữ liệu UT-Interaction [7] được giới thiệu<br /> trong [8]. UT-Interaction là bộ dữ liệu sử dụng trong bài toán nhận dạng hành động tương tác giữa hai<br /> người trong video, gồm 20 đoạn video độ dài khoảng 1 phút, độ phân giải<br /> , 30 fps, với<br /> chiều cao của người trong video vào khoảng 200 điểm ảnh. Bộ dữ liệu được chia thành 2 tập nhỏ, mỗi tập<br /> 10 video. Tập dữ liệu thứ hai có khung cảnh phức tạp hơn tập dữ liệu thứ nhất, có nhiều cây cối rung<br /> động và độ sáng tương đối thấp. Tác giả chọn lựa trong 20 đoạn video thuộc bộ UT-Interaction ra 10<br /> video đạt chuẩn điều kiện đầu mà tác giả định nghĩa đồng thời tùy chỉnh lại kích thước của video. Cụ thể,<br /> điều kiện đầu mà tác giả áp dụng gồm:<br /> - Độ phân giải:<br /> <br /> điểm ảnh.<br /> <br /> - Tốc độ: 30 khung hình trên giây.<br /> - Tại thời điểm khởi đầu của video chưa xuất hiện bất kì đối tượng nào trong khung hình.<br /> Bảng 1. Bộ dữ liệu thực nghiệm<br /> Tên tập tin (*.avi)<br /> <br /> Số người xuất hiện trong video (người)<br /> <br /> 01<br /> <br /> 2<br /> <br /> 02<br /> <br /> 2<br /> <br /> 03<br /> <br /> 2<br /> <br /> 04<br /> <br /> 4<br /> <br /> 05<br /> <br /> 5<br /> <br /> 06<br /> <br /> 2<br /> <br /> 07<br /> <br /> 2<br /> <br /> 08<br /> <br /> 8<br /> <br /> 09<br /> <br /> 5<br /> <br /> 10<br /> <br /> 10<br /> <br /> 220<br /> <br /> hư ng ph p ph t hiện người<br /> <br /> a tr n<br /> <br /> ng h<br /> <br /> n<br /> <br /> ng<br /> <br /> Tốc độ xử lý giữa thuật toán của tác giả được so sánh với tốc độ chạy của thuật toán phát hiện người<br /> bằng bộ phân loại cascade trên toàn khung ảnh. Ta thấy rằng việc tính toán đặc trưng LBP trên tất cả các<br /> cửa sổ trong toàn khung ảnh, cho tất cả khung ảnh rất tốn chi phí so với phương pháp phát hiện dựa trên<br /> vùng chuyển động.<br /> 25<br /> Phương<br /> pháp BSCC<br /> <br /> (fps)<br /> 20<br /> 15<br /> <br /> Phương<br /> pháp<br /> Cascade<br /> Classifier<br /> <br /> 10<br /> 5<br /> 0<br /> 01<br /> <br /> 02<br /> <br /> 03<br /> <br /> 04<br /> <br /> 05<br /> <br /> 06<br /> <br /> 07<br /> <br /> 08<br /> <br /> 09<br /> <br /> 10<br /> <br /> (video)<br /> <br /> ình 4 Biểu đồ so sánh tốc độ xử lý của phương pháp phát hiện người bằng bộ phân loại cascade và<br /> phương pháp BS-CC<br /> <br /> 4. KẾT LUẬN VÀ HƢỚNG PHÁT TRIỂN<br /> Với bộ dữ liệu video đạt chuẩn điều kiện đầu mà tác giả định nghĩa trên mục 4 thì tốc độ xử lý giữa<br /> thuật toán BS-CC nhanh hơn nhiều so với thuật toán phát hiện người bằng bộ phân loại cascade. Phương<br /> pháp phát hiện dựa trên vùng chuyển động tối ưu hơn so với việc việc tính toán đặc trưng LBP, Haar trên<br /> tất cả các cửa sổ trong toàn khung ảnh, cho tất cả khung ảnh.<br /> Tuy nhiên thuật toán phát hiện người còn cần được huấn luyện để cải thiện về độ ổn định trong kích<br /> thước của hình chữ nhật bao đối tượng, nghĩa là đối tượng người trong hình chữ nhật này phải có một tỉ lệ<br /> nhất định và tâm của hình chữ nhật trùng với tâm của đối tượng. Điều này sẽ hỗ trợ rất nhiều trong việc<br /> trích chọn đặc trưng bất biến của người một cách hiệu quả khi ta có thể xác định được chiều cao của đối<br /> tượng cũng như một số đặc trưng nâng cao theo hướng mô hình hóa người.<br /> Đặc trưng màu sắc của đối tượng người mà tác giả trích chọn dựa vào phương pháp tính biểu đồ<br /> mức xám của từng kênh màu do đó sự khác biệt màu sắc giữa các đối tượng chưa rõ ràng. Một phương<br /> pháp trích tính toán biểu đồ màu có thể được phát triển để bổ trợ cho việc trích chọn đặc trưng này. Dựa<br /> trên biểu đồ màu, chúng ta có thể xây dựng một hàm nhân theo ý tưởng của phương pháp mean shift làm<br /> nổi bật sự khác biệt màu sắc giữa các đối tượng chính là một đặc trưng bất biến hiệu quả.<br /> Trong thuật toán của tác giả, mỗi đối tượng từ khi xuất hiện đến khi ra khỏi vùng máy quay đều<br /> được ghi lại vị trí trong khung hình thành một đường đi theo thời gian. Dữ kiện này có thể được sử dụng<br /> kết hợp trong bài toán nhận dạng hành động người do sự tương tác giữa hai hay nhiều người có phụ thuộc<br /> vào vị trí của họ.<br /> TÀI LIỆU THAM KHẢO<br /> 1.<br /> <br /> Paul Viola and Michael Jones (2001). Rapid Object Detection using a Boosted Cascade of Simple<br /> Features. Computer Vision and pattern Recognition.<br /> <br /> 2.<br /> <br /> Shengcai Liao, Xiangxin Zhu, Zhen Lei, Lun Zhang, and Stan Z Li (2007). Learning multi-scale<br /> block local binary patterns for face recognition. In Advances in Biometrics, Springer, pages 828–<br /> 837.<br /> <br /> 3.<br /> <br /> OpenCV<br /> 3.2.0<br /> documentation<br /> Cascade<br /> Classifier<br /> http://docs.opencv.org/3.2.0/dc/d88/tutorial_traincascade.html<br /> <br /> 4.<br /> <br /> T. Ojala, M Pietikäinen, and D Harwood (1996). A Comparative Study of Texture Measures with<br /> Classification Based on Feature Distributions. Pattern Recognition 29(1).<br /> 221<br /> <br /> Training.<br /> <br /> [Online].<br /> <br />
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2