1 2 Yêu cầu của hệ thống 59

Một phần của tài liệu Nghiên cứu một số thuật toán xử lý ảnh ứng dụng trong bài toán giảm sát tự động (Trang 59)

Hệ thống có chức năng phát hiện đối tượng và bám sát đối tượng tự động. Hệ thống cũng có chức năng đánh dấu phạm vi cần quan sát.

Chương trình có các chức năng chính: - Mở một file video có trong thư viện.

- Đánh dấu đối tượng xuất hiện trong khung hình (sử dụng hình bao hình chữ nhật)

- Đếm số đối tượng xuất hiện trong khung hình (đánh số đối tượng từ 0) - Đánh dấu vùng cần quan sát bằng đường thẳng hoặc hình chữ nhật

3. 1. 3. Tư tưởng

- Xây dựng một mô đun thử nghiệm quá trình xác định và giám sát đối tượng

- Áp dụng kỹ thuật trừ nền để xác định đối tượng có trong đoạn video thu nhận được, tách đối tượng với nền.

- Sử dụng kỹ thuật bám sát điểm để bám sát sự chuyển động của đối tượng xác định được.

Các bước thực hiện

Hình 3. 1- Tiến trình xử lý của bài toán

Chương trình sử dụng thuật toán Gaussian Mixture Model để xác định

được mô hình nền làm cơ sở cho quá trình xác định đối tượng có trong khung hình. Các đối tượng chuyển động trong khung hình được đánh dấu bằng hình chữ nhật.

Quá trình bám sát đối tượng là quá trình bám sát theo các khung hình chữ nhật được đánh dấu.

Bên cạnh đó, chương trình có mở rộng với một đường ranh giới ảo và một khung hình chữ nhật đánh dấu phạm vi cần quan sát đặc biệt. Theo đó, các đối tượng với hình bao là khối hình chữ nhật khi chạm vào đường ranh giới sẽ được ghi nhận và chuyển sang màu đỏ. Riêng đối với trường hợp phạm vi quan sát trong khối hình chữ nhật sẽ có chức năng đếm số đối tượng vào vùng quan sát.

Khi bắt đầu mở file video, khung hình đầu tiên được xem là hình nền. Các đối tượng xất hiện trong các khung hình kế tiếp sẽ được xem xét và đánh dấu lại để bám theo cho tới khi rời khỏi khung hình.

3. 2. Cài đặt chương trình và một số hình ảnh thử nghiệm

3. 2. 1. Yêu cầu phần cứng

Chương trình thử nghiệm được viết bằng ngôn ngữ C++, có sử dụng một số thư viện của OpenCV.

Yêu cầu cấu hình máy: CPU: Dual Core RAM: 1GB

3. 2. 2. Một số hình ảnh thử nghiệm

Hình 3. 2- Giao diện của chương trình

Các đối tượng xuất hiện trong khung hình sẽ được bám theo cho tới khi rời khỏi khung hình. Số lượng đối tượng được đánh từ 0.

Kẻ một đường thẳng để đánh dấu phần cần quan sát đặc biệt. Các đối tượng đến đường sẽ được đánh dấu bằng hình chữ nhật màu đỏ.

Hình 3. 4- Đánh dấu vùng quan sát đối tượng bằng đường thẳng

Người sử dụng kéo một hình chữ nhật để xác định phạm vi cần giám sát, các đối tượng khi di chuyển vào khu vực này sẽ được gán số thứ tự từ 0. Khi đối tượng rời khỏi vùng giám sát thì tự động số thứ tự này sẽ được giảm.

PHẦN KẾT LUẬN

Xử lý ảnh là một lĩnh vực khoa học có nhiều ứng dụng, là một chuyên ngành còn mới và nhiều triển vọng phát triển. Một trong những lĩnh vực ứng dụng được các kỹ thuật xử lý ảnh để giải quyết công việc đó là giám sát tự động.

Cũng như xử lý ảnh, cho dù mới ra đời, nhưng giám sát tự động đã chiếm được ưu thế về khả năng ứng dụng trong thực tiễn trên thế giới nói chung cũng như tại Việt Nam nói riêng. Nhờ có những hệ thống giám sát tự động chúng ta đã giảm thiểu được sức người trong nhiều lĩnh vực mà vẫn thu được kết quả cao. Hệ thống giám sát tự động có thể được ứng dụng trong nhiều lĩnh vực như: giáo dục; kinh tế; kỹ thuật… và cụ thể là điều tiết giao thông, kiểm soát an ninh tại các khu vực công cộng như nhà ga, sân bay, bến xe…, kiểm soát vào ra tại các tòa nhà, chung cư…;

Qua tìm hiểu và nghiên cứu các tài liệu, luận văn đã giới thiệu về các khái niệm cơ bản của xử lý ảnh, cấu trúc cơ bản của video, hệ thống giám sát tự động. Luận văn đã nêu ra được tính cấp thiết của đề tài “Nghiên cứu một số

thuật toán xử lý ảnh ứng dụng trong hệ thống giám sát tự động”. Các kết quả

tìm hiểu và nghiên cứu đã tổng kết được quy trình cần thực hiện trong hệ thống giám sát tự động gồm:

- Phát hiện đối tượng - Bám sát đối tượng

Sau khi trình bày về một số kỹ thuật phát hiện đối tượng và bám sát đối tượng. Học viênTác giả đã lựa chọn thuật toán trừ nền bằng phương pháp mô hình hỗn hợp Gaussian để phát hiện đối tượng thu nhận được từ một camera đặt ngoài trời. Đối tượng được phát hiện được đánh dấu bằng khung hình chữ nhật sau đó chuyển tiếp tới mô đun bám sát đối tượng. Với kỹ thuật Kanade-Lucas, đối tượng đã được bám sát tới khi rời khỏi khung hình.

Trên đây là một số kết quả mà luận văn đã đạt được. Các kết quả này phù hợp với mục tiêu đề ra trong đề cương nghiên cứu.

Tuy nhiên, như đã trình bày, giám sát tự động là một trong những lĩnh vực mới đầy triển vọng. Do vậy, trong tương lai gần, tác giả sẽ phát triển những kết quả đã nghiên cứu được cũng như tìm hiểu thêm để có thể xây dựng hệ thống giám sát đối tượng trong hệ thống có nhiều camera cũng như giải quyết một số vấn đề về va chạm trong hệ thống.

TÀI LIỆU THAM KHẢO

Tiếng Việt

[1] Đỗ Năng Toàn, Phạm Việt Bình, Giáo trình xử lý ảnh, Đại học Thái Nguyên, NXB Khoa học và Kỹ thuật, 2008.

Tiếng Anh

[2] Alper Yilmaz, Omar Javed and Mubarak Shah, Object Tracking: A survey, ACM Computing Surveys. Vol. 38. No4, Article 13, 12,2006.

[3] Badatosh Chanda, Dwijesh Dutta Majumder, Digital Image Processing and Analysis, Prentice Hall of India, 2001

[4] C. Stauffer and W. Grimson. Adaptive background mixture models for realtime tracking. In Proc. of the IEEE Computer Society Conference on Computer Vision and Pattern Recognition, 2005.

[5] Comaniciu,D. ,Ramesh,V. , and Meer, P. Kernel-based object tracking. IEEE Trans. Patt. Analy. Mach. Intell. 25. 564-575,2003.

[6] Dorin Comaniciu, Peter Meer “Mean shift analysis and application”, Proceedings of the seventh IEEE International Conference on Computer Vision, 1999, Vol 2, 1197-1203

[7] Hampapur, A. , Jain, R. , Weymouth, T. , Digital Video Segmentation, Proc. ACM Multimedia 94, San Francisco CA, 1994, pp. 357 – 364

[8] Jyrpi Korki - Anttila (2002), “Automatic color enhancement and sence change detection of digital video”, Dept of Automation and Systems, Lab of Media Technology, Hensiki University of Technology

[9] Katharina Quast and Andre Kaup, “AUTO GMM-SAMT: An Automatic Object Tracking System for Video Surveillance in Trafic Scenarios”, EURASIP Journal on Image and Video Processing, Volume 2011.

[10] NanLu, Jihong Wang, Q. H. Wu and Li Yang, “An improved motion detection method for real time surveillence”, IAENG International Journal of Computer Science, 35:1,IJCS_35_1_16

[11] Shahraray, B. , Scene Change Detection and Content-Based Sampling of Video Sequences, Digital Video Compression: Algorithms and Technologies, A. Rodriguez, R. Safranek, E. Delp, Editors, Proc. SPIE 2419, 1995, pp. 2 – 13

[12] Serby, D. Koller-Meier, S. and Gook. L. V. Probabilistic object tracking using multiple features. In IEEE International Conference of Pattern Recognition (ICPR), 184-187, 2004

[13] Veenman, C. , Reinders, M. , and Backer, E. Resolving motion correspondence for densely moving points. IEEE Trans. Patt. Analy. Mach. Intell. 23,1,54-72, 2001

[14] Xiong, W. , Lee, J. C. -M. , Ip, M. C. , Net comparison: a fast and effective method for classifying image sequences, SPIE Conf. Storage and Retrieval for Image and Video Databases III, Proceedings, San Jose, CA, 1995, pp. 318 – 328

PHỤ LỤC

Các bước thao tác với file . AVI

AVI là một trong những chuẩn video được tích hợp trong thư viện của môi trường lập trình.

Để thực hiện xử lý các file video ta cần thực hiện các thao tác cơ bản để chuyển sang xử lý ảnh cho các khung hình (frames)

Bước 1. Mở và đóng thư viện

Để có thể thực hiện được các thao tác với file . AVI chúng ta cần thực hiện mở thư viện. Công việc này được thực hiện bằng hàm

AVIFileInit()

Đây là hàm không cần tham số, có nhiệm vụ khởi động thư viện cung cấp các hàm hỗ trợ thao tác với file . AVI. Thư viện được khai báo trong file vfw. h

Sau khi thực hiện xong để tránh những lỗi đáng tiếc, nên sử dụng hàm đóng thư viện lúc đầu bằng lệnh

AVIFileExit()

Bước 2. Mở và đóng file . avi

Sau khi mở thư viện, chúng ta xác định địa chỉ file . AVI mà cần thao tác, tiến hành mở file bằng lệnh

AVIFileOpen(PQVIFILE*ppfile,LPCSTR fname, UINT mode, CLSID pclsidHandler)

Hàm này tạo ra một vùng đệm chứa con trỏ trỏ đến file có tên là fname cần mở. ppfile là con trỏ trỏ đến vùng đệm đó. Tham số mode qui định kiểu mở file: mở để đọc OF_READ, mở để ghi…OF_WRITE… Tham số cuối cùng là NULL

Sau khi thao tác xong với file, ta cần gõ dòng lệnh đóng file . AVI đã mở trước khi đóng thư viện

pfile là con trỏ trỏ tới file cần đóng

Bước 3: Mở dòng dữ liệu hình ảnh hoặc âm thanh trong file . AVI để thao tác

Để có thể bắt đầu thao tác với dữ liệu hình ảnh hoặc âm thanh trong file . AVI, ta sử dụng câu lệnh

AVIFileGetStream(PAVIFILE pfile, PAVISTREAM *ppavi,DWORD fccType, LONG lParam)

Trong đó,

pfile là con trỏ trỏ đến file đã mở

ppavi trỏ đến dòng dữ liệu kết quả

fccType là loại dòng dữ liệu chọn để mở, nếu là âm thanh thì giá trị là streamtypeAUDIO, còn nếu là hình ảnh thì giá trị là streamVIDEO. .

lParam: đếm số loại dòng được mở, là 0 nếu chỉ thao tác với một loại dòng dữ liệu

Sau khi thao tác xong với dữ liệu ta luôn nhớ phải sử dụng lệnh

AVIStreamRelease(PAVISTREAM pavi)

để đóng dữ liệu cần thao tác lại.

Bước 4: Thao tác với khung hình (frames)

AVIStreamGetFramOpen(PAVISTREAMpavi, LPBITMAPINFOHEADER lpbiWanted)

trong đó,

pavi trỏ đến dòng dữ liệu đã mở

lpbiWanted là con trỏ trỏ đến cấu trúc mong muốn của hình ảnh, ta dùng NULL để sử dụng cấu trúc mặc định

Hàm này trả về đối tượng có kiểu PGETFRAME để dùng cho hàm

Hàm trả về con trỏ trỏ tới dữ liệu của frame thứ lpos. Dữ liệu có kiểu là DIB đã định khối.

Sau khi thực hiện các thao tác mong muốn với frame, ta cần gọi hàm đóng frame

Một phần của tài liệu Nghiên cứu một số thuật toán xử lý ảnh ứng dụng trong bài toán giảm sát tự động (Trang 59)