Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 26 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
26
Dung lượng
463,02 KB
Nội dung
Header Page of 126 -1- BỘ GIÁO DỤC VÀ ĐÀO TẠO ĐẠI HỌC ĐÀ NẴNG TẠ THỊ ÁI NHI PHÁT HIỆN VÀ THEO VẾT NGƯỜI TỪ DỮ LIỆU VIDEO Chuyên ngành : KHOA HỌC MÁY TÍNH Mã số : 60.48.01 TÓM TẮT LUẬN VĂN THẠC SĨ KỸ THUẬT Đà Nẵng - Năm 2012 Footer Page of 126 Header Page of 126 -2- Công trình hoàn thành ĐẠI HỌC ĐÀ NẴNG Người hướng dẫn khoa học: TS Huỳnh Hữu Hưng Phản biện : TS Huỳnh Công Pháp Phản biện : PGS.TS Đoàn Văn Ban Luận văn bảo vệ Hội đồng chấm Luận văn tốt nghiệp thạc sĩ kỹ thuật họp Đại học Đà Nẵng vào ngày 04 tháng 03 năm 2012 Có thể tìm hiểu luận văn tại: • Trung tâm Thông tin - Học liệu, Đại học Đà Nẵng • Trung tâm Học liệu, Đại học Đà Nẵng Footer Page of 126 Header Page of 126 -3- MỞ ĐẦU Lý chọn đề tài Với phát triển nhanh chóng loại máy móc đại máy ảnh số, máy quay phim kỹ thuật số, máy vi tính, điện thoại động,…v.v lượng thông tin người thu dạng hình ảnh lớn Để lượng thông tin trở nên có ích người cần phải tiến hành xử lý từ tạo điều kiện cho phát triển không ngừng kỹ thuật xử lý hình ảnh Xử lý ảnh công nghệ ứng dụng rộng rãi nhiều lĩnh vực đời sống xã hội Không dừng lại việc xử lý vết nhèo, tái chế phục hồi ảnh cũ, ngày công nghệ xử lý ảnh mang lại tiến vượt bậc nhận dạng vân tay, nhận dạng khuôn mặt, nhận dạng đối tượng kết hợp với lĩnh vực trí tuệ nhân tạo Bên cạnh đó, hệ thống camera quan sát ngày sử dụng cách rộng rãi với mục đích hỗ trợ an ninh cho cửa hàng, công ty, ngân hàng, v.v Nhưng camera có khả để lưu giữ liệu video cần tốn thêm chi phí để thuê nhân viên bảo vệ để quan sát phát có người xâm nhập Hiện giới có số ứng dụng nghiên cứu việc giám sát hỗ trợ an ninh Tuy nhiên nghiên cứu phát triển riêng lẻ, chưa tính hợp với để tạo thành hệ thống giám sát hoàn chỉnh giá thành cho ứng dụng cao Footer Page of 126 Header Page of 126 -4- Từ yêu cầu thực tế đặt ra, việc xây dựng hệ thống phát theo vết (tracking) người từ liệu video thu thông qua hệ thống camera quan sát với hỗ trợ kỹ thuật theo vết lĩnh vực thị giác máy tính (computer vision) điều cần thiết Mục tiêu nhiệm vụ nghiên cứu Mục đích đề tài nhằm nghiên cứu thuật toán phát theo vết khuôn mặt người chuyển động từ liệu video, từ xây dựng chương trình hỗ trợ với chức sau: - Phát khuôn mặt người thực cảnh báo âm để thông báo có nhiều người vào vị trí quan sát camera đặc biệt nơi bảo mật giới hạn người vào văn phòng công ty, ngân hàng, v.v - Theo vết khuôn mặt người người từ liệu video truyền từ camera thông qua thuật toán theo vết Meanshift - Thống kê số lượng người vào văn phòng, cửa hàng, ngân hàng,…v.v thông qua liệu video từ camera quan sát Bên cạnh đề tài mong muốn giúp cho người có nhìn toàn diện vai trò khả ứng dụng công nghệ xử lý ảnh vào thực tế đời sống xã hội Đối tượng phạm vi nghiên cứu Đối tượng nghiên cứu Trong toán này, liệu xử lý đoạn video quay từ camera tĩnh ghi lại với chuẩn AVI (Audio Video Interleave) Phạm vi nghiên cứu Footer Page of 126 Header Page of 126 -5- Phạm vi nghiên cứu đề tài liên quan đến lĩnh vực xử lý ảnh số thông qua việc sử dụng thư viện mở OpenCV (Open Computer Vision) Phương pháp nghiên cứu Phương pháp nghiên cứu lý thuyết - Tìm hiểu cách lập trình với thư viện OpenCV - Tìm hiểu phương pháp AdaBoost kết hợp với đặc trưng Haar-like để phát khuôn mặt - Tìm hiểu phương pháp trừ (background subtraction) để phát chuyển động, - Tìm hiểu thuật toán theo vết Meanshift Camshift Phương pháp nghiên cứu thực nghiệm - Tiến hành phân tích cài đặt: thuật toán trừ để phát chuyển động, thuật toán phát theo vết khuôn mặt người từ liệu video - So sánh đánh giá kết đạt Kết dự kiến - Nắm vững cài đặt thành công thuật toán: phát chuyển động phương pháp trừ nền, phát khuôn mặt, theo dõi khuôn mặt video - Xây dựng chương trình để hỗ trợ chức năng: cảnh báo người âm thanh, theo vết khuôn mặt thuật toán Meanshift đếm số người vào tòa nhà từ liệu video - Tạo bảng so sánh kết quả, độ xác phương pháp phát theo vết đối tượng chuyển động dựa tập video có sẵn Footer Page of 126 Header Page of 126 -6- Ý nghĩa khoa học thực tiễn luận văn Về mặt lý thuyết - Ứng dụng thành công công nghệ xử lý ảnh vào thực tế - Tạo tiền đề cho nghiên cứu tương lai Về mặt thực tiễn - Cung cấp thuật toán hỗ trợ cho điều khiển rôbốt, thiết bị phát nhận dạng khuôn mặt người - Giúp giảm giá thành cho công tác bảo vệ bảo mật - Thống kê số lượng khách hàng ngày để từ có chiến lược thích hợp việc phát triển chiến lược kinh doanh tương lai - Tạo tiền đề cho việc xây dựng sở liệu nhận dạng khách hàng cách tự động thông qua khuôn mặt Bố cục luận văn Nội dung luận văn chia thành phần sau: Mở đầu Chương 1: Nghiên cứu tổng quan Chương 2: Đánh giá thuật toán xây dựng chức Chương 3: Cài đặt kết Kết luận hướng phát triển Phụ lục Footer Page of 126 Header Page of 126 -7- CHƯƠNG 1: NGHIÊN CỨU TỔNG QUAN 1.1 TỔNG QUAN VỀ CAMERA SỐ 1.1.1 Khái niệm camera số Camera thiết bị ghi hình ghi lại hình ảnh khoảng thời gian lưu trữ liệu hình ảnh 1.1.2 Phân loại camera số 1.1.2.1 Phân loại theo kỹ thuật hình ảnh 1.1.2.2 Phân loại theo đường truyền 1.1.2.3 Phân loại theo tính sử dụng 1.1.3 Hệ thống camera quan sát 1.2 TỔNG QUAN VỀ VIDEO 1.2.1 Khái niệm video Thuật ngữ video dùng để nguồn thông tin hình ảnh trực quan (pictorial visual information), bao gồm chuỗi ảnh tĩnh (still image) liên tiếp nhau, xếp theo chiều thời gian 1.2.2 Video số 1.2.2.1 Tín hiệu video số 1.2.2.2 Ưu nhược điểm video số 1.2.2.3 Chuẩn video số AVI Theo wikipedia, Audio Video Interleave (AVI) đa phương tiện định dạng container Microsoft giới thiệu vào tháng 11 năm 1992 AVI tập tin chứa âm video liệu container cho phép đồng tập tin âm với video Footer Page of 126 Header Page of 126 -8- 1.3 CÁC PHƯƠNG PHÁP TRỪ NỀN PHÁT HIỆN ĐỐI TƯỢNG 1.3.1 Tổng quan phát đối tượng 1.3.2 Giới thiệu phương pháp trừ Ý tưởng chung phương pháp trừ là: Để phát đối tượng chuyển động video phải có mô hình (background) Mô hình học qua nhiều frame ảnh bị thay đổi, ngược lại ta chọn có sẵn không bị thay đổi Sau đó, ta dùng mô hình để so sánh với frame ảnh kết ta nhận biết đâu vùng phần nền, đâu phần chuyển động 1.3.3 Frame Difference 1.3.3.1 Thuật toán cài đặt 1.3.3.2 Ưu điểm 1.3.3.3 Nhược điểm 1.3.4 Running Gaussian Average 1.3.4.1 Thuật toán cài đặt 1.3.4.2 Ưu điểm 1.3.4.3 Nhược điểm 1.3.5 Codebook 1.3.5.1 Thuật toán cài đặt 1.3.5.2 Ưu điểm 1.3.5.3 Nhược điểm 1.4 PHƯƠNG PHÁP PHÁT HIỆN KHUÔN MẶT NGƯỜI 1.4.1 Tổng quan phát người Footer Page of 126 Header Page of 126 1.4.2 -9- Phát khuôn mặt người 1.4.2.1 Giới thiệu 1.4.2.2 Các phương pháp phát khuôn mặt người 1.4.2.3 Đặc trưng Haar-like 1.4.2.4 AdaBoost 1.4.2.5 Hệ thống xác định vị trí khuôn mặt người 1.4.2.6 Thuật toán xác định khuôn mặt người Footer Page of 126 Header Page 10 of 126 - 10 - Load image Chuyển image thành grey image Load file liệu haarcascade Ngược lại Load thành công Gọi hàm cvHaarDetectObjects() để lấy n số khuôn mặt có image Ngược lại n>0 i=0 Ngược lại i Lấy khuôn mặt đầuNgược tiên cólại Theo vết khuôn mặt với Meanshift Hình 2.30 Thuật toán theo vết khuôn mặt 2.2.2.3 Kết Đoạn video Video1.avi có 1083 frame kích thước 640x360 có người nói khuôn mặt hướng phía camera với ánh sáng đèn điện Chương trình phát khuôn mặt người thực việc theo dõi khuôn mặt toàn video Hình 2.31 Footer Page 18 of 126 Header Page 19 of 126 - 19 - Hình 2.31 Kết theo vết khuôn mặt với Video1 2.2.3 Chức đếm số người vào tòa nhà 2.2.3.1 Mô tả chức Việc thống kê số lượng khách hàng từ liệu video điều cần thiết cho chiến lược kinh doanh công ty Vì thế, chương trình cung cấp thêm chức giúp cho người dùng thống kê gần số lượng khách tới văn phòng để giao dịch ngày Điều làm sở để công ty đề chiến lược thích hợp việc phát triển cho tương lai 2.2.3.2 Thuật toán xử lý Thuật toán xử lý bao gồm việc lặp lại bước sau với frame video Bước 1: - Dùng phương pháp trừ để lấy phần chuyển động cách so sánh frame với frame - Chuyển ảnh thành ảnh xám thực khử nhiễu cách loại bỏ bóng Bước 2: - Tính toán thành phần ảnh để xác định hướng di chuyển đối tượng vào hay việc sử dụng hàm cvCalcGlobalOrientation() Nếu giá trị góc dịch chuyển từ 0-180 xác định đối tượng vào, ngược lại đối tượng Footer Page 19 of 126 Header Page 20 of 126 - - 20 - Với đối tượng di chuyển (connected component) đánh dấu hình chữ nhật màu vàng dòng màu đỏ để xác định hướng di chuyển đối tượng Bước 3: Dựa vào kết hướng di chuyển đối tượng Bước 2, ta tính tổng số lượng vào khỏi tòa nhà 2.2.3.3 Kết Đoạn video Video1.avi có 2946 frame với kích thước 384x288 có 34 người qua cửa vào với ánh sáng bình thường Kết việc đếm số người thể Hình 2.36 Hình 2.36 Kết đếm người với Video1 Footer Page 20 of 126 Header Page 21 of 126 - 21 - CHƯƠNG 3: CÀI ĐẶT VÀ KẾT QUẢ 3.1 CÀI ĐẶT CHƯƠNG TRÌNH 3.1.1 Yêu cầu hệ thống 3.1.2 Cài đặt 3.2 KẾT QUẢ MINH HỌA Sau chương trình khởi động, hình chương trình Hình 3.1 Hình 3.1 Giao diện Hình 3.2 Chức cảnh báo âm Footer Page 21 of 126 Header Page 22 of 126 - 22 - Hình 3.3 Chức theo vết khuôn mặt người Hình 3.4 Chức đếm số người vào tòa nhà 3.3 ĐIỀU KIỆN RÀNG BUỘC CỦA CHƯƠNG TRÌNH Để chương trình hoạt động cho kết xác cần phải thỏa mãn số điều kiện sau: - Nền video không thay đổi Footer Page 22 of 126 Header Page 23 of 126 - - 23 - Camera dùng để quay video phải đặt vị trí cố định, phía cửa vào khoảng cách với người chuyển khoảng 1.5m đến 2m chức đếm người vào tòa nhà - Camera dùng để quay video phải đặt vị trí cố định phía trước khuôn mặt người vào với khoảng cách khoảng 0.5m đến 1m chức cảnh báo người âm - Ánh sáng video phải ổn định, không tối sáng chức làm việc xác - Chương trình làm việc xác với video màu 3.4 ĐÁNH GIÁ KẾT QUẢ CHƯƠNG TRÌNH Sau thực nghiệm khoảng 40 video mẫu, chương trình hoạt động điều kiện ràng buộc chương 3.3 mang lại độ xác cao - Độ xác chức cảnh báo âm khoảng 90% - Độ xác chức theo vết khuôn mặt khoảng 80% - Độ xác chức đếm số người vào tòa nhà khoảng 88% Từ kết này, ta thấy chương trình có khả để triển khai thực tế Tuy nhiên, tương lai chương trình cần có số cải tiến thêm để tăng độ xác chức Footer Page 23 of 126 Header Page 24 of 126 - 24 - KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN Kết luận Về mặt lý thuyết - Tìm hiểu sử dụng thành thạo thư viện OpenCV Microsoft Visual Studio 2008 - Tìm hiểu khái niệm video camera số - Tìm hiểu thuật toán phát chuyển động phương pháp trừ nền: Frame Differrence, Running Gausian Average Codebook - Tìm hiểu phương pháp phát khuôn mặt người kỹ thuật Haar kết hợp AdaBoost - Tìm hiểu phương pháp theo vết: Meanshift, Camshift - Tìm hiểu cách thức đếm số lượng người vào tòa nhà Về mặt thực tiễn Về bản, đề tài hoàn thành chức đặt yêu cầu ban đầu như: - Phát phần chuyển động qua frame video - Phát đánh dấu thành công tất khuôn mặt người ảnh tĩnh việc kết hợp đặc trưng Haar-like với phân loại mạnh AdaBoost - Hoàn thành chức cảnh báo người cách sử dụng âm - Hoàn thành chức theo vết khuôn mặt người trong video giúp ích cho việc theo dõi Footer Page 24 of 126 Header Page 25 of 126 - 25 - lưu liệu khuôn mặt nhằm tạo sở liệu phục vụ cho việc nhận dạng người tự động sau - Hoàn thành chức đếm số người vào tòa nhà từ liệu video thu thông qua camera, giúp ích cho việc thống kê số khách hàng vào giao dịch cửa hàng - Sử dụng thành công công cụ phục vụ cho việc xử lý video Motion Video, FLV Converter để chuyển đối định dạng video khác định dạng AVI để dễ dàng cho việc thao tác thư viện OpenCV Phạm vi ứng dụng Đề tài ứng dụng công tác bảo mật cửa hàng công ty, giúp tiết kiệm chi phí thuê bảo vệ hiệu cáo việc phát chuyển động, theo dõi nhận dạng người chuyển động từ liệu video Bên cạnh đề tài tạo tảng cho nghiên cứu cảm quan máy tính nói riêng xử lý ảnh nói chung tương lai Hạn chế Bên cạnh kết đạt được, đề tài có số hạn chế cần phải khắc phục như: - Tốc độ xử lý chương trình chậm xử lý video có độ phân giải cao kích thước lớn - Việc phát khuôn mặt người bị sai trường hợp số đối tượng video có hình dáng gần giống với khuôn mặt người Footer Page 25 of 126 Header Page 26 of 126 - - 26 - Chức đếm số người vào đếm dựa chiều di chuyển đối tượng chuyển động vào, không phân biệt người vật Hướng phát triển Trong trình thực đề tài, hạn chế trình độ thời gian thực đề tài có hạn, chương trình xây dựng phần demo thuật toán phát chuyển động, phát khuôn mặt theo vết đối tượng dựa vào video Để triển khai thực tế đòi hỏi cần phải cải tiến Hy vọng tương lai, phát triển giúp đề tài hoàn thiện - Kết hợp việc phát khuôn mặt với việc phát mắt, phát hình dáng người - Xây dựng thuật toán cải thiện chất lượng video loại trừ nhiễu, loại trừ bong tối ưu hóa thuật toán để tăng tốc độ chương trình - Hỗ trợ tùy chọn giúp người dùng điều chỉnh khoảng cách camera đối tượng tùy thuộc vào cấu trúc tòa nhà mà họ sử dụng để đặt camera quan sát - Xử lý việc che lấp đối tượng nhắm tạo kết xác cao cho cho chức theo dõi khuôn mặt người - Mở rộng thêm thuật toán Camshift để theo dõi nhiều đối tượng video lúc thực đếm tổng số người xuất video thông qua chức - Xây dựng sở liệu giúp nhận dạng khách hàng cách tự động thông qua khuôn mặt Footer Page 26 of 126 ... giới hạn người vào văn phòng công ty, ngân hàng, v.v - Theo vết khuôn mặt người người từ liệu video truyền từ camera thông qua thuật toán theo vết Meanshift - Thống kê số lượng người vào văn phòng,... cho người dùng phát khuôn mặt người video - Phát theo vết khuôn mặt người video - Thống kê số lượng người vào khỏi nhà video 2.2.1 Chức cảnh báo âm 2.2.1.1 Mô tả chức Hệ thống cung cấp chức phát. .. thuật toán phát theo vết khuôn mặt người chuyển động từ liệu video, từ xây dựng chương trình hỗ trợ với chức sau: - Phát khuôn mặt người thực cảnh báo âm để thông báo có nhiều người vào vị trí