1. Trang chủ
  2. » Giáo Dục - Đào Tạo

Nghiên cứu phát triển thuật toán đo tốc độ của xe ô tô

81 1K 3

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 81
Dung lượng 2,48 MB

Nội dung

  BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI -   NGUYỄN THỊ THẢO  NGUYỄN THỊ THẢO             KỸ THUẬT ĐIỆN TỬ    NGHIÊN CỨU PHÁT TRIỂN THUẬT TOÁN ĐO TỐC ĐỘ XE Ô TÔ            LUẬN VĂN THẠC SĨ  KỸ THUẬT   CHUYÊN NGÀNH: KỸ THUẬT ĐIỆN TỬ                                                        KHOÁ 2014B        Hà Nội  – 2016    BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI NGUYỄN THỊ THẢO     NGHIÊN CỨU PHÁT TRIỂN THUẬT TOÁN ĐO TỐC ĐỘ XE Ô TÔ        Chuyên ngành : KỸ THUẬT ĐIỆN TỬ      LUẬN VĂN THẠC SĨ  KỸ THUẬT   CHUYÊN NGÀNH: KỸ THUẬT ĐIỆN TỬ                                                                          NGƯỜI HƯỚNG DẪN KHOA HỌC :                                                                              PGS.TS. NGUYỄN TIẾN DŨNG            Hà Nội – 2016    MỤC LỤC LỜI CAM ĐOAN I LỜI CẢM ƠN II DANH MỤC CÁC CHỮ VIẾT TẮT III MỤC LỤC HÌNH ẢNH IV MỞ ĐẦU CHƯƠNG TỔNG QUAN VỀ CÁC PHƯƠNG PHÁP ĐO TỐC ĐỘ XE Ô 1.1. Tổng quan về các phương pháp giám sát phương tiện giao thông 1.1.1. Thực trạng của hệ thống giao thông ở Việt Nam 1.1.2. Giải pháp hệ thống ITS ở phương Tây 1.1.3. Tổng quan về sự phát triển của hệ ITS 1.2. Hướng tiếp cận của luận văn 1.2.1. Phương pháp phát hiện chuyển động 1.2.2. Phương pháp đo tốc độ phương tiện 11 CHƯƠNG ỨNG DỤNG KĨ THUẬT XỬ LÝ ẢNH TRONG GIẢI QUYẾT BÀI TOÁN GIAO THÔNG 14 2.1. Sơ lược về lý thuyết xử lý ảnh 14 2.1.1. Đặt vấn đề 14 2.1.2. Khái niệm xử lý ảnh 14 2.2. Các giai đoạn xử lý ảnh 15 2.2.1. Thu nhận ảnh 15 2.2.2. Tiền xử lý 16 2.2.3. Phân đoạn ảnh 16 2.2.4. Biểu diễn ảnh 17 2.2.5. Nhận dạng và nội suy ảnh 17 2.2.6. Cơ sở tri thức 18 2.3. Một số ứng dụng phổ biến của xử lý ảnh trong giao thông 18 2.3.1. Nhận dạng biển số xe 18 2.3.2. Phát hiện, cảnh báo biển báo và đèn tín hiệu 19 2.3.3. Phát hiện, cảnh báo vật cản và dự báo tắc đường 20   2.4. Thuật toán áp dụng để phát hiện và theo dõi đối tượng 20 2.4.1. Thuật toán cực đại hóa kỳ vọng 20 2.4.2. Mô hình hỗn hợp Gaussian (GMM) trong xử lý ảnh 24 2.4.3. Nhận diện Blob 27 2.4.4. Ghi nhãn thành phần được kết nối 30 CHƯƠNG PHÁT HIỆN, PHÂN LOẠI VÀ ƯỚC LƯỢNG CHUYỂN ĐỘNG ĐỐI TƯỢNG Ô 32 3.1. Tìm hiểu về bộ công cụ xử lý ảnh và thị giác máy tính trong MATLAB 32 3.1.1. Bộ công cụ xử lý ảnh 32 3.1.2. Computer Vision Toolbox 36 3.2. Quy trình nghiên cứu về đếm và ước lượng vận tốc xe 44 3.2.1. Thu thập dữ liệu 45 3.2.2. Xử lý dữ liệu 47 3.3.  Phân  tích,  đánh  giá  kết  quả  thuật  toán  đếm  đối  tượng  và  ước  lượng  tốc  độ  phương tiện 56 3.3.1. Quá trình mô phỏng 56 3.3.2. Đánh giá kết quả 57 KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ĐỀ TÀI 62 TÀI LIỆU THAM KHẢO 63     LỜI CAM ĐOAN  Tên tôi là: Nguyễn Thị Thảo Sinh ngày 10 tháng 10 năm 1990  Học viên lớp cao học Kỹ thuật Điện tử 2014B - Trường Đại học Bách Khoa  Hà Nội.  Xin cam đoan nội dung đề tài “Nghiên cứu phát triển thuật toán đo tốc độ  xe ô tô” là do tôi tự tìm hiểu, nghiên cứu và thực hiện dưới sự hướng dẫn của thầy  giáo  PGS.TS.  Nguyễn  Tiến  Dũng.  Mọi  trích  dẫn  và  tài  liệu  tham  khảo  mà  tôi  sử  dụng đều có ghi rõ nguồn gốc.   Tôi xin hoàn toàn chịu trách nhiệm về lời cam đoan trên.    Hà Nội, tháng 09 năm 2016  Học viên thực hiện  Nguyễn Thị Thảo   I      LỜI CẢM ƠN  Trước tiên, tôi xin bày tỏ lòng biết ơn tới PGS.TS. Nguyễn Tiến Dũng đã tận  tình hướng dẫn, truyền đạt những kiến thức và kinh nghiệm quý báu giúp tôi hoàn  thành Bản luận văn thạc sĩ này.  Tôi  xin  gửi  lời cảm  ơn chân  thành  tới  tập  thể các thầy,  cô  giáo trong Viện  Điện tử - Viễn thông, Trường Đại học Bách khoa Hà Nội đã tạo ra một môi trường  tốt để tôi học tập và nghiên cứu. Tôi cũng xin cảm ơn các thầy cô trong Viện Đào  tạo sau đại học đã quan tâm đến khóa học này, tạo điều kiện thuận lợi cho các học  viên trong suốt quá trình học tập và thực hiện đề tài.  Cuối cùng, tôi xin bày tỏ lòng biết ơn tới toàn thể gia đình, cảm ơn bạn bè và  đồng nghiệp đã luôn cổ vũ, động viên tôi trong suốt thời gian qua.   Tuy  đã  cố  gắng  hết  sức,  nhưng  do  thời  gian  và  kiến  thức  còn  hạn  chế  nên  luận văn không tránh khỏi sai sót, tôi rất mong sự bổ sung, góp ý của các thầy cô.                                                       Nguyễn Thị Thảo    II     Học viên        DANH MỤC CÁC CHỮ VIẾT TẮT CAMShift  : Continuously Adaptive Mean Shift  DoG  : Difference of Gaussian  DoH  : Determinant of the Hessian  EM  : Expectation Maximization  GMM  : Gaussian Mixture Model  HOG  : Histogram of Oriented Gradient  ITS   : Intelligent Traffic System  KLT   : Kanade-Lucas-Tomasi  LoG   : Laplacian of the Gaussian  III      MỤC LỤC HÌNH ẢNH Trang  Hình 1.1. Hình ảnh tắc đường tại Hà Nội .4 Hình 1.2. Trung tâm quản lý giao thông (TMS) ở Athens Hình 1.3. Hệ thống giám sát giao thông ở Hồng Kông Hình 1.4. Hệ thống giám sát giao thông sử dụng sóng radar Hình 1.5. Hệ thống giám sát giao thông đa làn bằng xử lý ảnh Hình 1.6. Ảnh đã được thực nghiệm ở trên 1 tuyến đường của Hà Nội (hầm Kim Liên) 12 Hình 2.1. Các giai đoạn xử lý ảnh 14 Hình 2.2. Quá trình thu nhận và số hóa ảnh thực 15 Hình 2.3. Ví dụ về quá trình thu ảnh giao thông 16 Hình 2.4. Quá trình phân đoạn frame ảnh từ video .17 Hình 2.5. Quá trình nhận dạng kí tự trên biển số xe .18 Hình 2.6. Ứng dụng xử lý ảnh trong nhận dạng biển số xe 19 Hình 2.7. Ứng dụng xử lý ảnh phát hiện đèn đỏ và biển báo giao thông .19 Hình 2.8. Ứng dụng xử lý ảnh phát hiện vật cản 20 Hình 2.9. Ứng dụng xử lý ảnh phát hiện và dự báo tắc đường 20 Hình 2.10. Ví dụ EM: Các thành phần hỗn hợp và dữ liệu .22 Hình 2.11. Hàm likehood của 2 giá trị trung bình của thành phần hỗn hợp θ1 và θ2 22 Hình 2.12. Quá trình nhận dạng blob .27 Hình 3.1. Ví dụ hiển thị video trong Matlab 33 Hình 3.2. Ví dụ nâng cao chất lượng ảnh mầu đa dải .34 Hình 3.3. Ví dụ phân tích ảnh phát hiện biên 34 Hình 3.4. Ví dụ tái cấu trúc ảnh dựa trên dữ liệu hình chiếu 35 Hình 3.5. Xác định độ tròn của các đối tượng trong ảnh 35 Hình 3.6. Phân đoạn ảnh sử dụng bộ lọc Gabor .36 IV      Hình 3.7. Một vài ví dụ của ứng dụng thị giác máy .37 Hình 3.8. Đối chiếu các điểm tương đồng giữa 2 frame ảnh 38 Hình 3.9. Ghi nhận dựa trên  thuộc tính  được sử dụng để ổn định video 39 Hình 3.10. Ví dụ về phát hiện đối tượng chuyển động 40 Hình 3.11. Đối tượng được nhận dạng và theo dõi trong 2 frame ảnh 41 Hình 3.12. Ước lượng chuyển động của các xe được phát hiện 42 Hình 3.13. Xóa nhòe video trong Matlab .42 Hình 3.14. Quá trình hiển thị video khi xử lý .43 Hình 3.15. Quá trình thêm đồ họa vào video khi xử lý 44 Hình 3.16. Tổng quan về hệ giám sát giao thông sử dụng phần mềm Matlab .45 Hình 3.17. Phân tích vị trí khi cài đặt camera 45 Hình 3.18. Thiết lập góc hướng của camera 46 Hình 3.19. Lựa chọn không gian làm việc phù hợp cho camera .46 Hình 3.20. Xác định làn xe cần thiết 46 Hình 3.21. Lưu đồ quy trình xử lý video 47 Hình 3.22. Ảnh nền sau khi thực hiện trừ nền với GMM chưa qua lọc nhiễu 51 Hình 3.23. Ảnh nền sau khi xóa nhiễu 51 Hình 3.24. Đối tượng được phát hiện và đánh dấu bằng hình vuông bao quanh .53 Hình 3.25. Sơ đồ khối thuật toán đếm 54 Hình 3.26. Sơ đồ khối thuật toán ước lượng vận tốc xe 55 Hình 3.27. Hình ảnh thu được từ video 56 Hình 3.28. Phát hiện nền 56 Hình 3.29. Đếm đối tượng .57 Hình 3.30. Tính vận tốc chuyển động của xe 57 Hình 3.31: Giao diện thêm nhiễu vào video gốc 58 Hình 3.32. Ước lượng vận tốc xe trước và sau khi bổ sung nhiễu Gauss 58 Hình 3.33. Mô phỏng trên các video đầu vào khác nhau lấy từ camera tĩnh 59 Hình 3.34. Mô phỏng trên các video đầu vào khác nhau lấy từ camera động 60 V      MỞ ĐẦU Tính cấp thiết vấn đề nghiên cứu Ở  Việt  Nam,  vấn  đề  điều  khiển  các  phương  tiện  giao  thông  khi  xảy  ra  tắc  nghẽn giao thông rất khó khăn và thường phải nhờ vào sự điều hành của cảnh sát  giao thông. Tuy nhiên, số lượng cảnh sát giao thông vẫn còn rất hạn chế. Hơn thế  nữa, do thiếu thốn trang thiết bị kỹ thuật, quá trình điều khiển giao thông không dễ  dàng trong giờ cao điểm. Trong khi đó ở các nước phương tây, để giải quyết những  vấn đề đó, một hệ thống theo dõi sử dụng camera không cần đến sự hiện diện của  con người, được thiết lập ở ngã tư kiểm soát dòng xe và tình trạng giao thông. Giải  pháp đó có thể tiết kiệm rất nhiều nguồn lực cũng như thuận tiện cho các trình điều  khiển giao thông và cập nhật thông tin giao thông.  Có thể nói giám sát online thông minh bằng hình ảnh cho phương tiện đường  bộ là một phần quan trọng cho việc phát triển hệ thống giao thông thông minh. Căn  cứ vào tình hình  giao  thông tại Việt Nam, trong đề tài nghiên cứu tác giả đề xuất  một chương trình phát hiện và theo dõi vận tốc xe thông qua giám sát video trong  đó sử dụng thuật toán phân mảnh và trừ nền ban đầu dựa trên hình thái ảnh để xác  định các vùng nổi bật trong một chuỗi các frame của video. Vận tốc xe sẽ được tính  toán và hiển thị trên video.  Phần  mềm  theo  dõi  giao  thông  được  xây  dựng  trên  ngôn  ngữ  lập  trình  MATLAB.  Chương  trình  thử  nghiệm  xử  lý  video  đầu  vào,  phát  hiện  và  đếm  các  phương  tiện  di  chuyển.  Đoạn  video  được  ghi  lại  bởi  các  camera  cố  định,  vì  vậy  chúng ta có thể bỏ qua các rung động và chuyển động không mong muốn. Điều đó  có nghĩa là các camera cho chúng ta video với tiêu chuẩn đủ điều kiện. Nhiệm vụ  của đề tài là xử lý video mẫu.   Mục tiêu nghiên cứu luận văn Mục tiêu của đề tài là phát triển một hệ thống có thể đếm số lượng xe đi qua  một  điểm  xác  định,  và  cũng  phân  loại  từng  loại  xe  thông  qua  kích  thước  xe,  ước  lượng vận tốc chuyển động của xe. Ngoài ra, tác giả muốn phát triển hệ thống giám  sát  giao thông ngoài  khả  năng  trên,  còn  phải  xác  định  được  hướng  của  chúng,  và  1        Hình 3.31: Giao diện thêm nhiễu vào video gốc Sau đó sử dụng video đã thêm nhiễu để đánh giá sai số trong bài toán đếm và  ước lượng tốc độ phương tiện. Kết quả cho thấy, mật độ nhiễu càng cao, video rất  mờ, bị nhiễu rất nhiều và kết quả hiện thị càng sai số tăng so với video mẫu đã được  tính toán trước đó, chương trình không đếm chính xác được. Cụ thể: tổng số xe đếm  được là 4, khi bổ sung nhiễu Gauss 6% chương trình đếm được 5 xe, bổ sung nhiễu  Gauss 8% chương trình đếm được 6 xe. Vận tốc của xe cũng thay đổi với sai lệch  khoảng từ  2km/h đến  5km/h mỗi xe.    Hình 3.32 Ước lượng vận tốc xe trước sau bổ sung nhiễu Gauss 58       Trường hợp 2: Kết với video đầu vào khác Trong đề tài này, tác giả đã lựa chọn mẫu video có chất lượng tốt nhất về độ  sáng, độ ổn định, không có rung động, và tốc độ xe không quá cao. Do đó khi thực  hiện với video với điều kiện xấu thì lỗi là không thể tránh khỏi. Ví dụ, với ô tô tốc  độ chậm, chương trình có thể đếm chính xác số lượng xe, còn với xe chạy tốc độ  cao, chương trình không thể đếm chính xác được, do đó việc tính toán vận tốc xe  gặp  khó  khăn.  Ở  ví  dụ  khác,  với  2  xe  chạy  gần  nhau  với  cùng  một  vận  tốc  thì  chương trình không thể phân biệt và sẽ tính 2 xe là 1.    Cụ  thể  khi  thực  hiện  mô  phỏng  trên  video  “Traffic3.mp4”  thu  được  từ  camera tĩnh. Kết quả  mô phỏng đạt yêu cầu chính xác trên 92%. Chương trình đếm  được số lượng xe cũng như ước lượng tốc độ chuyển động của các phương tiện “ảo”.     Hình 3.33 Mô video đầu vào khác lấy từ camera tĩnh Thực  hiện  mô  phỏng  trên  video  “Traffic1.mp4”.  Video  này  được  thu  từ  camera  động  có  nền  thay  đổi  và  chuyển  động  theo  thời  gian.  Kết  quả  mô  phỏng  không đạt yêu cầu. Chương trình không đếm được đúng số lượng xe cũng như ước  lượng tốc độ chuyển động của các phương tiện “ảo” 59      Hình 3.34 Mô video đầu vào khác lấy từ camera động Bảng dưới đây đánh giá kết quả thu được sau khi áp dụng thuật toán:     Video đầu  Định  vào  dạng  Độ phân  Tốc độ  giải  Số lượng  Frame  phương tiện  Số lượng  Độ  phương tiện  chính  (fr/s)  thực  đếm được  xác  visiontraffic  avi  640x360  29  6  6  100%  traffic3  mp4  400x224  24  25  23  92%  videotraffic  mp4  854x480  25  49  82  60%  Traffic1  mp4  1280x720  50  60  184  3%  Như mục tiêu của luận văn đã đề ra, thì một phần của chương trình đã được  thực hiện. Trong tương lai, tác giả mong muốn xây dựng được một hệ thống để có  thể sử dụng trong thực tiễn. Mặc dù độ chính xác không cao, nhưng chương trình  cũng phần nào đạt được kết quả dự kiến.   Nhận xét dưới đây đánh giá chi tiết về những gì đã đạt được và những thiếu  sót của chương trình.   Ưu điểm - Có thể phát hiện những chiếc xe tối màu, thậm chí là màu xe tương tự với  màu nền;  - Xử lý với  độ chính  xác cao  trong  việc phát hiện  vì sử dụng  mô hình hỗn  hợp Gaussian (GMM);  60      - Có khả năng theo dõi và phân loại xe từng làn trên đường cao tốc.   Nhược điểm - Độ phân giải của camera càng cao thì càng chính xác. Tuy nhiên, độ phân  giải cao sẽ phải xử lý rất nhiều dữ liệu, gây chậm hệ thống;  - Các phương tiện đi quá gần nhau, gây nên nhận dạng phương tiện bị sai;  - Góc đặt camera khiến các phương tiện nhận dạng được di chuyển sai số. Do  vậy tác giả đề xuất phương pháp đo theo trọng tâm phương tiện.  Như  những  nhận  xét  trên,  thời  gian  xử  lý các  video  là  vấn đề  lớn  nhất  của  chương trình, chương trình chạy khá chậm dẫn đến hệ thống thời gian thực không  thể thực hiện trong thực tiễn. Ngoài ra, tăng độ chính xác của thuật toán cũng là một  phần quan trọng. Mặc dù vậy, tác giã cũng đã thực hiện một phần lớn của luận văn.  Đó là điều kiện tiên quyết để hoàn thành các tác vụ còn lại của chương trình.   Kết luận chương Trong  chương  3,  tác  giả  giới  thiệu  về  tính  năng  của  hai  bộ  công  cụ  Image  Processing  và  Computer  Vision  trong  phần  mềm  lập  trình  Matlab.  Từ  đó  đưa  ra  hướng tiếp cận  thuật  toán xử  lý  bằng  phần  mềm  Matlab. Sau  đó trình  bày  lưu đồ  thuật toán và chương trình mô phỏng sử dụng thị giác máy (Machine Vision) trên  phần mềm Matlab. So sánh, đánh giá kết quả mô phỏng thuật toán xác định vận tốc  phương tiện giao thông sau khi bổ sung nhiễu vào video gốc và so sánh, đánh giá  dựa trên một số video đầu vào khác nhau thu được từ camera tĩnh và động. Từ đó  đưa ra những ưu, nhược điểm của hệ thống.                 61        KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN ĐỀ TÀI Đề tài nghiên cứu đã áp dụng thuật toán trừ nền và phân mảnh ảnh sử dụng  toán  tử  hình  thái,  phát  hiện  nền  và  sử  dụng  GMM  thích  nghi.  Hệ  thống  giám  sát  giao  thông  đã được  xây dựng  nhằm  phát  hiện,  đếm  và  theo dõi  đối  tượng  chuyển  động đồng thời đưa ra vận tốc xe một cách khá hiệu quả.   Video đưa vào chương trình ghi lại quá trình chuyển động của các đối tượng  có vận tốc nhỏ nên độ ổn định của video cao. Khi thiết lập trên cao tốc vận tốc thực  của các đối tượng có thế rất lớn. Ngoài ra, các yếu tố như thời tiết cũng có thể ảnh  hưởng đến chất lượng video và làm kết quả của chương trình sai lệch. Điều này cần  được thử nghiệm và phát triển thêm trong thời gian tới.  Nhìn chung, đề tài đã hoàn thành cơ bản các mục tiêu đề ra và đưa ra sơ đồ  thuật toán nhằm giám sát phương tiện giao thông.   Từ những kết quả kể trên, chúng ta cần phải có thêm thời gian nghiên cứu để  hoàn thiện sản phẩm. Việc giảm thời gian xử lý là điều đòi hỏi trước tiên khi phát  triển đề tài, bởi vì tốc độ xử lý ảnh hưởng lớn đến kết quả chương trình và các phán  quyết  cho  người  dùng.  Bên  cạnh đó  số  lượng  phương  tiện  trong  video  còn  ít,  nếu  muốn  giải  quyết  triệt  để  bài  toán  thực  tế  thì  các  video  đưa  vào  xử  lý  cần  phải  đa  dạng hơn, số lượng phương tiện nhiều hơn, tốc độ di chuyển nhanh hơn nữa.   62      TÀI LIỆU THAM KHẢO [1]. Naeem Abbas, Muhammad Tayyab, M.Tahir Qadri (2013), “Real Time Traffic  Density  Count  using  Image  Processing”,  International Journal of Computer Applications (0975 – 8887), Volume 83 – No 9.  [2]. Ms.Pallavi Choudekar, Ms.Sayanti Banerjee, Prof.M.K.Muju, “Real time traffic  light  control  using  image  processing”,  Indian Journal of Computer Science and Engineering (IJCSE)   [3].  M.  Zervakis*,  K.  Kalaitzakis,  V.  Kastrinaki  (2003),  “A  survey  of  video  processing techniques for traffic applications”, Image and Vision Computing 21, pp.  359–381.   [4].  Blake  A,  Ferrier  NJ,  Rowe  SM  (1994),  “Real-time  traffic  monitoring”,  in  WACV94.  [5].  Daily  DJ,  Pumrin  S  (2002),  “Roadside  Camera  Motion  Detection  for  Automated  Speed  Measurement”,  in  The IEEE 5th International Conference on  Intelligent Transportation Systems, Singapore.  [6].  Andrew  Naftel,  Alexandre  Bernardino,  José  Melo,  and  José  Santos-Victor  (2006),  “Detection  and  classification  of  highway  lanes  using  vehicle  motion  trajectories”, IEEE Trans Intelligent Trans Syst., pp. 188-200.  [7]. Zhaobin L, Jinxiang L, Caidong G, Maoxin S, Fangyong T, Jianping W (2009),  “An  Algorithm  for  Automatic  Vehicle  Speed  Detection  using  Video  Camera”,  in  Pro IEEE 4th Int Conference Comput Sci Educ.  [8].  Fumio  Yamazaki,  Wen  Liu,  T.  Thuy  Vu  (2008),  “Vehicle  Extraction  And  Speed Detection From Digital Aerial Images”, IEEE International Geoscience and Remote Sensing Symposium, pp. 1134-1137.  [9]. Wen L, Fumio Y (2009), “Speed detection of moving vehicles from one scene  of Quick Bird images”, Urban Remote Sensing Joint Event.  63      [10].  Shisong    Zhu,  Toshio  Koga  (2006),  “Feature  Point  Tracking  for  Car  Speed  Measurement”,  in  The IEEE Asia Pacific Conference on Circuits and Systems (APCCAS 2006).  [11].  Yu,  X.-D.,  Duan,  L.-Y,  Tian,  Q.,  E.F.  (2002),  “Highway  traffic  information  extraction  from  skycam  MPEG  Video”,  in  Proc.IEEE 5th International  Conf on Intelligent Transportation Sys.  [12].  Pelegri,  J.,  Alberola,  J.,  Llario,  V.,  E.F.  (2002),  “Vehicle  detection  and  car  speed monitoring systems using  GMR  magnetic  sensors”,  in Proc.IEEE 2002 28th  Annual Conf Industrial Electronics Society.  [13]. Li, Y., Yin, L., Jia, Y., Wang, M., E.F. (2008), “Vehicle speed measurement  based  on  video  images”,  in  Proc 3rd International Conf Innovative Computing  Information and Control.  [14]. He, Z., Liu, Y., Yu, H., Ye, X., E.F. (2008), “Optimized algorithms for traffic  information  collecting  in  an  embedded  system”,  Congress on Image and  Signal Processing, vol. Vo.4, pp. 220-223.  [15].  B.D.  Stewart,  I.  Reading,  M.S.  Thomson,  T.D.  Binnie,  K.W.  Dickinson,  C.L.  Wan  (1994),  “Adaptive  lane  finding  in  road  traffic  image  analysis”,  Proceedings  of  Seventh  International  Conference  on  Road  Traffic Monitoring and Control, IEE, London.  [16].  E.D.  Dickmanns,  V.  Graefe  (1988),  Dynamic monocular machine vision, Machine vision and applications 1, pp. 223–240.  [17].  C.L.  Wan,  K.W.  Dickinson,  T.D.  Binnie  (1994),  “A  cost-effective  image  sensor  system  for  transport  applications  utilising  a  miniature  CMOS  single chip camera”, IFAC Transportation systems, Tianjin, Proceedings.  [18].  M.  Papageorgiou,  Video  sensors,  Papageorgiou  Markos  (Ed.),  Concise Encyclopedia of traffic and transportation systems,  pp.  610–615.  [19]. M. Bertozzi, A. Broggi, S. Castelluccio (1997), “A real-time oriented system  for vehicle detection”, Journal of System Architecture 43, pp. 317–325.  64      [20]  Can  Nguyen  Van,  Huy  Huynh  Van,  Tao  Ngo  Quoc  (2014),  “Car counting method using Gaussian Mixture Model and Optical Flow”,  The  3rd  Solid  State  Systems  Symposium-VLSIs  and  Semiconductor  Related  Technologies  &  The  17th  International Conference on Analog VLSI Circuits-Analog Signal and Information  Processing Applications. Ho Chi Minh City, 10/2014. Proceeding, pages 192-198.  [21]  Elhabian  S.,  El-Sayed  K.,  Ahmed  S.  (2008),  Moving Object Detection in Spatial Domain using Background Removal Techniques State-of-Art, Recent  Patents on Computer Science, Volume 1, Number 1, pages 32-54.  [22]  Cristani  M.,  Farenzena  M.,  Bloisi  D.,  Murino  V.  (2010),  “Background  Subtraction  for  Automated  Multisensor  Surveillance:  A  Comprehensive  Review”,  EURASIP Journal on Advances in Signal Processing, 24 pages, Volume 2010.  [23].  Chris  Stauffer,  W.E.L  Grimson,  “Adaptive  background  mixture  models  for  real-time  tracking”,  The Artificial Intelligence Laboratory Massachusetts Institute of Technology Cambridge, MA 02139.  [24].  TS.  Đỗ  Năng  Toàn,  TS.  Phạm  Việt  Bình  (2007),  Giáo trình môn học xử lý ảnh, Khoa Công nghệ thông tin - Đại học Thái Nguyên.  [25]. Frank Dellaert (2002), “The Expectation Maximization Algorithm”, College of Computing, Georgia Institute  of  Technology  Technical  Report  number  GIT-GVU02-20.  [26]. The Mathworks, Inc. (2015), Image Processing Toolbox User Guide.  [27]. Richard Szeliski (2010), “Computer Vision: Algorithms and Applications”.  [28]. https://en.wikipedia.org/wiki/Blob_detection  [29]. https://en.wikipedia.org/wiki/Connected-component_labeling      65      Phụ lục Main code %============Clear Windows================     clc;        % Clear the command window.  clear all;  % Clear workspace  close all;  % Close all figures (except those of imtool.)  workspace;  % Make sure the workspace panel is showing.     %==============Input Video================     video_name = 'visiontraffic.avi';  % video name     %==============Video Information===============     video_info = VideoReader(video_name);  % Show information of video     %===============Read Video File===============     videoReader = vision.VideoFileReader(video_name);     %==============Set Parameters=================     NumTrainingFrames = 100;  line_pos = [160 185 600 185];   %[x1 y1 x2 y2]  pixel_up = 180;                  % round((y1-5)/5)  pixel_down = 190;                % round((y2+5)/5)  dif_x = 180;  dif_y = 120;  66      lane_pix = 430;     %==============Detect Foreground================     foregroundDetector = vision.ForegroundDetector('NumGaussians', 3,        'NumTrainingFrames', NumTrainingFrames);  % detect foreground                                 % with 50 training frames, 3 Gaussian models                                    %==============Create blob of object==============     blobAnalysis = vision.BlobAnalysis('BoundingBoxOutputPort', true,        'AreaOutputPort', false, 'CentroidOutputPort', false,        'MinimumBlobArea', 350);    % return blob area                                  % minimum blob in pixels is 350     %=============Insert box====================     shapeInserter = vision.ShapeInserter('BorderColor','White');                                  % allow insert shapes in image     %=============Set up videoPlayer================                                                        videoPlayer = vision.VideoPlayer('Name', 'Detected Cars');  videoPlayer.Position(3:4) = [video_info.Width,video_info.Height+50];                                                        % videoPlayer2 = vision.VideoPlayer('Name', 'Foreground');  % videoPlayer2.Position(3:4) = [video_info.Width,video_info.Height+50];      %==============Morphological Filter================  67         se = strel('square', 3); % morphological filter for noise removal     %=============Counting Parameters===============  count = 0;  count_car = 0;  count_truck = 0;  count_frame = -1;  lane_1 = 0;  lane_2 = 0;  isVehicle=0;   time_speed=0;  speed=0;  %==============Process total video==============  while ~isDone(videoReader)         frame = step(videoReader); % read the next video frame      count_frame = count_frame + 1;            % Detect the foreground in the current video frame      foreground = step(foregroundDetector, frame);         % Use morphological opening to remove noise in the foreground      filteredForeground = imopen(foreground, se);         % Detect the connected components with the specified minimum area, and      % compute their bounding boxes      bbox = step(blobAnalysis, filteredForeground);     68          % Draw bounding boxes around the detected cars      result = insertShape(frame, 'Rectangle', bbox, 'Color', 'green');           % Display the Line where vehicles are counted       % result = insertShape(result, 'Line', line_pos, 'Color', 'yellow');            % If the bbox is detected      pos_lane_1 = [225 182 175 6];      pos_lane_2 = [410 182 175 6];      result = insertShape(result, 'FilledRectangle', pos_lane_1, 'Color', 'red');      pos_A = [310 185];      result = insertText(result, pos_A, 'A', 'BoxOpacity', 1,                 'TextColor','black','BoxColor', 'yellow', 'FontSize', 20);      result = insertShape(result, 'FilledRectangle', pos_lane_2, 'Color', 'red');      pos_B = [485 185];      result = insertText(result, pos_B, 'B', 'BoxOpacity', 1,                 'TextColor','black','BoxColor', 'green', 'FontSize', 20);           if (size(bbox) ~= 0)                    % Get size of the bbox          sizebbox = size(bbox);                    % Run one by one bbox          for k = 1: sizebbox(1)              bot_bbox = bbox(k,2)+ bbox(k,4);    % Get y of bottom bbox              toa_do = bbox(k,2)+ bbox(k,4);         % Divide by 5              x_right = bbox(k,1) + bbox(k,3)/2;                69      %             % Position to display word: "Object"  %             pos = zeros(k,2);  %             pos = [bbox(k,1), bbox(k,2)];   % Top left of bbox  %             result = insertText(result, pos, 'Object', 'BoxOpacity', 1,    %                 'TextColor','black','BoxColor', 'yellow', 'FontSize', 9);  %               %             % Center position of bbox, display a filled circle  %             pos2 = zeros(k,3);  %             pos2 = [bbox(k,1)+bbox(k,3)/2, bbox(k,2)+bbox(k,4)/2,4];  %             result = insertShape(result, 'filledcircle', pos2, 'Color', 'red');                            % Counted position is interval pixel from 180 to 190,              % divide by 5 is 36 to 38                        if  ((toa_do > pixel_up)&&(toa_do 

Ngày đăng: 02/04/2017, 08:33

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

w