Xây dựng chương trình

Một phần của tài liệu Tự động giám sát phương tiện trong hệ thống giao thông thông minh (Trang 42)

Chương trình được xây dựng trên công cụ Visual Studio 2010. Thuật toán cho chương trình:

43

Hình 4.2 Thuật toán cho chương trình tự động giám sát phương tiện trong hệ thống giao thông thông minh

Xây dựng lớp BlobTracking: class BlobTracking { private: bool firstTime; int minArea; int maxArea; bool debugTrack;

Đầu vào Video Bắt đầu Tách nền Chạy lần đầu? Lấy nền Xử lý tracking Xử lý counting

44 bool debugBlob; bool showBlobMask; bool showOutput; cvb::CvTracks tracks; void saveConfig(); void loadConfig(); public: BlobTracking(); ~BlobTracking();

void process(const cv::Mat &img_input, const cv::Mat &img_mask, cv::Mat &img_output);

const cvb::CvTracks getTracks(); };

Xây dựng class Vehicle Counting enum LaneOrientation { LO_NONE = 0, LO_HORIZONTAL = 1, LO_VERTICAL = 2 }; enum VehiclePosition { VP_NONE = 0, VP_A = 1, VP_B = 2

45 }; class VehicleCouting { private: bool firstTime; bool showOutput; int key; cv::Mat img_input; cvb::CvTracks tracks;

std::map<cvb::CvID, std::vector<CvPoint2D64f>> points; LaneOrientation LaneOrientation;

std::map<cvb::CvID, VehiclePosition> positions; long countAB; long countBA; int img_w; int img_h; int showAB; public: VehicleCouting(); ~VehicleCouting();

void setInput(const cv::Mat &i);

void setTracks(const cvb::CvTracks &t); void process();

private:

VehiclePosition getVehiclePosition(const CvPoint2D64f centroid); void saveConfig();

46 };

Thuật toán để đếm phương tiện:

Để đếm phương tiện giao thông, thông tin cần thiết là lưu đường đi của các phương tiện đó sau khi đã phân tách và nhận diện thành công phương tiện đó. Như trình bày ở chương trước đó, vị trí của các phương tiện là một ma trận khoảng cách được tính từ vị trí trọng tâm (centroid).

Hình 4.3 Thuật toán đếm phương tiện tham gia giao thông thông minh 4.3. Giao diện của chương trình

Chương trình gồm có đầu vào là Video, sau đó qua quá trình xử lý như tách nền, nhận diện đối tượng và đếm số lượng xe.

Lấy vị trí của phương tiện Bắt đầu

phương tiện mới xuất hiện?

Tăng bộ đếm

Kiểm tra hướng đi

Cập nhật giao diện

47

Hình 4.4 Giao diện của chương trình

4.4. Đánh giá hệ thống tự động giám sát phương tiện trong hệ thống giao thông thông minh thông minh

4.4.1. Đánh giá chức năng phát hiện và giám sát phương tiện

Để đánh giá được đúng chức năng phát hiện và giám sát phương tiện của chương trình, tác giả thực hiện cho đầu vào gồm nhiều đoạn video clip khác nhau: video clip gồm có 1 làn đường và phương tiện đi đơn lẻ và video clip gồm 1 làn đường với mật độ tham gia giao thông cao. (adsbygoogle = window.adsbygoogle || []).push({});

a. Trường hợp 1:

Là đầu vào của chương trình gồm có một làn đường và số lượng tham gia giao thông không cao:

Video dài 11 giây, và có 5 phương tiện tham gia gijao thông. Hệ thống đều nhận biết và giám sát các phương tiện chính xác. Hình 4.5

48

Hình 4.5 Đánh giá kết quả giám sát cho trường hợp 1

b. Trường hợp 2:

Là đầu vào của chương trình gồm có một làn đường và số lượng tham gia giao thông cao, tức là tại một thời điểm có thể có nhiều hơn một phương tiện tham gia giao thông:

Video dài 33 giây, hệ thống đều nhận biết và giám sát được tất cả phương tiện một cách chính xác. Hình 4.6

49

4.4.2. Đánh giá thuật toán đếm phương tiện tham gia giao thông.

Cũng sử dụng các nguồn video giống như thuật toán giám sát phương tiện, để đánh giá được độ chính xác của thuật toán đếm phương tiện tác giả đưa ra các trường hợp khác nhau khi các phương tiện tham gia giao thông.

a. Trường hợp 1:

Trong trường hợp đơn giản nhất khi hệ thống giao thông có một làn đường và số lượng phương tiện tham gia giao thông rất nhỏ, hệ thống đưa ra được số lượng chính xác của các phương tiện tham gia giao thông.

Video dài 11 giây, và có 5 phương tiện tham gia gijao thông. Hệ thống đều nhận biết và giám sát các phương tiện chính xác. Hình 4.7

Hình 4.7 Đánh giá thuật toán đếm phương tiện cho trường hợp 1 b. Trường hợp 2:

Trong trường hợp này khi hệ thống giao thông có một làn đường và số lượng phương tiện tham gia giao thông khá lớn, hệ thống chưa đưa ra được đúng số lượng phương tiện tham gia giao thông.

50

51

Chương 5: Kết luận và hướng phát triển

Hệ thống đã khắc phục được các lỗi từ những hệ thống cũ như Background-subtraction khi giải quyết được sự thay đổi nhanh trong video. Để tăng cường khả năng của hệ thống, hệ thống nên được vận hành trong thời gian thực (real-time). Hiện tại hệ thống có thể sẽ chậm hơn so với phương pháp Background-subtraction, bởi hệ thống cần phải học sau một khoảng thời gian.

Mục tiêu đặt ra của hệ thống là xử lý các đối tượng bị chồng lấn và nhầm lẫn thành một khối đã được khắc phục. Ngoài ra, các đối tượng tương tác với nhau thì mô hình này gần như hiệu quả nhất để giải quyết sau đó phân loại và xác định vị trí các đối tượng riêng lẻ.

Nếu hệ thống không cần bước tối ưu hóa thì vẫn chưa được kiểm chứng về mặt tốc độ hay sự chính xác.

Ngoài ra, hệ thống chỉ có thể nhận diện được phương tiện giao thông chung chung, chưa phân loại được các phương tiện thành: Phương tiện nặng như xe tải, container,... ; loại nhẹ: ô tô con, xe bus,... Trong tương lai, nếu sử dụng tỷ số thì khó có thể giải quyết được vấn đề này bởi tỷ số giữa các loại phương tiện có thể xấp xỉ nhau; vì vậy có thể sử dụng thêm các tham số như diện tích, kích thước,.. để giải quyết vấn đề này.

52

Thêm vào đó, hiện tại hệ thống chưa thể phát hiện được tắc đường. Điều này có thể được giải quyết dựa vào tốc độ của phương tiện tham gia giao thông. Bằng cách xây dựng các vector vận tốc của các phương tiện chúng ta có thể dự đoán được tắc đường hay không.

Hình 5.1 là một mô hình của một hệ thống mà sử dụng phương pháp loại bỏ nền background subtraction, giám sát các phương tiện giao thông có mật độ cao và đặc biện xây dựng một phương pháp phân loại các phương tiện giao thông dựa trên các đặc tính của vector; vì vậy hệ thống này cho phép phân loại các loại phương tiện giao thông thành: Phương tiện hạng nặng, phương tiện hạng trung bình và phương tiện nhẹ. Thêm nữa, do hệ thống có sử dụng phương pháp dự đoán mật độ phương tiện giao thông thế nên hệ thống này giải quyết được vấn đề cảnh báo tắc đường.

53

Tài liệu tham khảo

[1] Monahan, Torin. 2007. "War Rooms" of the Street: Surveillance Practices in Transportation Control Centers. The Communication Review 10 (4): 367-389.

[2] Tarnoff, Philip John, Bullock, Darcy M, Young, Stanley E, et al. Continuing Evolution of Travel Time Data Information Collection and Processing,Transportation Research Board Annual Meeting 2009 Paper #09-2030 TRB 88th Annual Meeting Compendium of Papers DVD (adsbygoogle = window.adsbygoogle || []).push({});

[3] Report (HC 15, 2004-05): Tackling congestion by making better use of England's motorways and trunk roads (Full Report) (PDF), National Audit Office, 26 November 2004, retrieved 2009-09-17

[4] Adrian Kaehler , Gary Bradski, (2008), Learning OpenCV: Computer Vision with the OpenCV Library.

[5] A.F. Bobick, et al., (1999) The KidsRoom: a perceptually-based interactive and immersive story environment, Teleoperators and Virtual Environment 8, p367–391.

[6] W. Grimson, C. Stauffer, R. Romano, L. Lee, (1998) Using adaptive tracking to classify and monitor activities in a site, Conference on Computer Vision and Pattern Recognition p22–29.

[7] H. Tao, H. Sawhney, R. Kumar, (2000) Dynamic layer representation with applications to tracking, Proceedings of International Conference on Pattern Recognition.

[8] T.-H. Chang, S. Gong, E.-J. Ong, (2000) Tracking multiple people under occlusion using multiple cameras, Proceedings of 11th British Machine Vision Conference.

[9] S. Dockstader, A. Tekalp, (2001) Multiple camera fusion for multi-object tracking, Proceedings of IEEE Workshop on Multi-Object Tracking p95–102.

[10] S. McKenna, J. Jabri, Z. Duran, H. Wechsler, (2000) Tracking interacting people, International Workshop on Face and Gesture Recognition p348–353.

[11] I. Haritaog ˘lu, M. Flickner, (2001) Detection and tracking of shopping groups in stores, CVPR.

54

[12] A. Lipton, H. Fuyiyoshi, R. Patil, (1998) Moving target classification and tracking from real-time video, Proceedings of Fourth IEEE Workshop on Applications of Computer Vision.

[13] I. Haritaog ˘lu, D. Harwood, L.S. Davis, W4 (2000) : Real-time surveillance of people and their activities, IEEE Transaction on Pattern Analysis and Machine Intelligence 22 (8) p809–830.

[14] S. Intille, J. Davis, A. Bobick, (1997) Real-time closed-world tracking, Conference on Computer Vision and Pattern Recognition p697–703.

[15] T. Ellis, M. Xu, (2001) Object detection and tracking in an open and dynamic world, International Workshop on Performance Evaluation of Tracking and Surveillance.

[16] A. Senior, (2002) Tracking with probabilistic appearance models, Third International workshop on Performance Evaluation of Tracking and Surveillance Systems.

[17] T. Zhao, R. Nevatia, F. Lv, (2001) Segmentation and tracking of multiple humans in complex situations, Conference on Computer Vision and Pattern.

[18] R. Rosales, S. Sclaroff, (1998) Improved tracking of multiple humans with trajectory prediction and occlusion modelling, IEEE CVPR Workshop on the Interpretation of Visual Motion.

Một phần của tài liệu Tự động giám sát phương tiện trong hệ thống giao thông thông minh (Trang 42)