Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 23 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
23
Dung lượng
1,21 MB
Nội dung
- 38 - Chương - PHÁT TRIỂN HỆTHỐNGĐIỀUKHIỂNGIAOTHÔNGTHÔNGMINH CHO ĐÔTHỊ 4.1 - Mục đích phạm vi ứng dụng Cài đặt hệthốngđiềukhiển tín hiệu đèn giaothơng dựa vào việc phân tích chuyển động phương tiện giaothơng hình ảnh thu nhận từ Camera đặt ngã tư Phạm vi thử nghiệm thực Camera tĩnh, ứng dụng phải xác định vùng mặt đường, đường xác định hướng quy định Phạm vi khảo sát ngã tư đường chiều Hình - 1: Phạm vi ứng dụng 4.2 - Mơ hình phát chuyển động áp dụng chương trình Để giảm thiểu chi phí tính tốn tăng tốc độ chương trình, đơn vị ảnh block (n x n) điểm ảnh Hệ số n hệ số thực nghiệm Chương trình cho phép thay đổi hệ số n Theo thực nghiệm n = tốt - 39 - Ngoài chương trình có khả thay đổi thơng số khác nữa, khoảng thời gian tĩnh để đối tượng di động đứng yên đủ lâu để tích hợp vào hình nền, ngưỡng để sử dụng hàm xác định độ khác biệt đặc trưng khung hình thời khung hình đối chiếu, Dựa vào lý thuyết trình bày trên, tơi xin đưa mơ hình phát chuyển động áp dụng chương trình thực nghiệm sau Khung hình thời Khung hình trước Rút trích đặc trưng độ sáng Rút trích đặc trưng độ sáng Cập nhật hình Khung hình Đối sánh khung hình Đối sánh hình Khác biệt Khác biệt khung hình Phát đối tượng chuyển động Khử nhiễu Khử bóng Đối tượng chuyển động Hình - 2: Sơ đồ thuật toán phát chuyển động cài đặt thử nghiệm - 40 - 4.2.1 - Hàm rút trích đặc trưng Fa Chương trình thực nghiệm lấy giá tri đặc trưng màu để áp dụng cho trình phát chuyển động Chương trình sử dụng phương pháp hiệu chỉnh độ sáng cho giảm thiểu nhiễu tác động môi trường sáng nên camera khác thời gian vận hành 24 Hàm lấy giá trị đặc trưng màu cài đặt trung bình cộng kênh màu (R, G, B) block Sau chuyển đổi thơng số R, G, B sang hệ màu H, L, S Ứng với block (kích thước n x n), chương trình lấy trung bình cộng kênh màu R, G, B tất điểm ảnh thuộc block Các giá trị chuyển đổi sang giá trị hệ màu HLS Thảm khảo source code phần Phụ lục 4.2.2 - Thuật toán cập nhật tự động Trong phương pháp cập nhật tự động, chương trình sử dụng biến đếm thời gian Ct = Kt gắn cho block chuyển động Cứ sau khung hình Mi xử lý, biến Ct giảm đơn vị block coi đứng yên Nếu Ct = tức sau Kt khung hình, block khơng thay đổi, block coi block khung hình cập nhật lên khung hình - 41 - Khung hình trước Khung hình thời Rút trích đặc trưng Rút trích đặc trưng Đối sánh khung hình đựa theo giá trị đặc trưng Khơng khác biệt đủ lâu theo ngưỡng cho trước Cập nhật block khơng khác biệt vào hình Khung hình cập nhật Hình - 3: Mơ hình phương pháp cập nhật động hình Giá trị Kt giá trị thực nghiêm Chương trình cho phép thay đổi động giá trị Kt Tuy nhiên chương trình tự động thay đổi hệ số Kt đẻ phù hợp với hoàn cảnh bước cải tiến tương lai - 42 - Khung hình trước Lấy khung hình thời Bắt đầu Khơng Kết thúc KThúc ? Kiểm tra block có chuyển động ? Có XL Thốt Kết thúc Khơng Đặt biến đếm giá trị Kt Giảm biến đếm đơn vị Đúng Biến đếm = 0? Sai Đặt block đứng yên vào ảnh Gán khung hình trước khung hình thời Chờ khung hình Khung hình Hình - 4: Thuật toán cập nhật động - 43 - Mơ tả thuật tốn: Bước 1: Khởi tạo hình ban đầu khung hình thời Khởi tạo biến đếm cho block tương ứng với khung hình Count[i] = Sang bước Bước 2: Nếu block i khung hình thời có chuyển động so với khung hình trước Thì đặt biến đếm Count[i] = Kt Ngược lại: Count[i] = max(0, Count[i] – 1) Nếu Count[i] = cập nhật block đứng yên i vào khung hình Sang bước Bước 3: Gán khung hình trước khung hình thời Lấy khung hình làm khung hình thời Quay lại bước Chi tiết mã chương trình thuật tốn cập nhật hình tự động trình bày phần Phụ lục Bảng - 1: Thống kê hiệu phát chuyển động với ngưỡng cập nhật STT Ngưỡng Kt Tỉ lệ phát chuyển động 20 30% 30 35% 40 53% 50 71% 80 79% 100 94% 120 86% 150 83% Theo thực nghiêm hệ số Kt = 100 thích hợp 4.2.3 - Hàm đo khoảng cách Fc Hàm đo khoảng cách Fc áp dụng chương trình đơn giản phép trừ bậc hai giá trị đặc trưng Hàm áp dụng cho cặp block hình so sánh Hàm có tinh chỉnh độ sáng ngưỡng để khử - 44 - nhiễu, làm tăng hiệu suất phát chuyển động Các giá trị đặc trưng đầu vào hàm giá trị đặc trưng block chuyển đổi sang giá trị H, L, S Hàm đo khảng cách trình bày source code phần Phụ lục 4.2.4 - Hàm nhận biết chuyển động Fb Trong bước tính toán này, ma trận Mc đem so sánh vói ngưỡng tồn cục k Điểm ảnh coi chuyển động giá trị Fc(x, y, t) > k, đứng yên nhỏ Hệ số k hệ số thực nghiệm Hệ số k = 0.05 thích hợp - 45 - Lấy khung hình thời Lấy khung hình Rút trích đặc trưng độ sáng Rút trích đặc trưng độ sáng Tính tốn ma trận khác biệt Đúng Ứng với block, giá trị ma trận khác biệt > ngưỡng Kt Sai Block coi chuyển động Block coi đứng yên Các xử lý block chuyển động Các xử lý block đứng n Hình - 5: Thuật tốn nhận biết chuyển động 4.2.5 - Lọc nhiễu Lọc nhiễu bước tinh chế quan trọng để nâng cao kết toán Sau thực bước phát chuyển động, ta thu ảnh kết chứa đối tượng chuyển động Tuy nhiên kết tồn nhiễu gây camera sai số trình phát chuyển động, nhiễu tồn - 46 - kết đối tượng chuyển động lẫn kết tĩnh đồng thời đường biên đối tượng chuyển động khơng trơn mịn Q trình lọc nhiễu khử bóng thực thi để hạn chế ảnh hưởng chúng kết Cách thông thường người ta thường sử dụng để lọc vùng nhiễu phương pháp loại bỏ vùng nhỏ Tuy nhiên loại bỏ ln vùng nhỏ thật cần thiết chúng thuộc đối tượng chuyển động mà cần thu nhận được, có vùng nhiễu thật chúng lớn lại không loại bỏ sau lọc nhiễu Phương pháp dựa việc theo dõi vùng nhiễu nhỏ vùng đối tượng thật Ban đầu thuật tốn xác định thành phần liên thơng tách vùng chuyển động Sau dựa vào diện tích vùng, vùng có diện tích nhỏ ngưỡng cho trước xem vùng nhiễu Ở có hai loại nhiễu: nhiễu (nhiễu trắng) nhiễu vùng đối tượng chuyển động (nhiễu đen) Đối với loại nhiễu thực việc loại bỏ chúng khỏi nền, loại nhiễu vùng đối tượng chuyển động xem chúng thuộc đối tượng chuyển động Sau bước ta thu kết hình – (c) từ hình – (b) Sau bước này, sử dụng lọc Blur với cửa sổ 3x3 để làm trơn mịn đường viền vùng đối tượng giảm thiểu tối đa ảnh hưởng đến cấu trúc chi tiết vùng ảnh có chứa đối tượng chuyển động Kết bước thu hình – (d) - 47 - (a) (b) (c) (d) Hình - 6: Minh họa trình lọc nhiễu Hình – (a) ảnh gốc, (b) kết nhận sau đối sánh ảnh, (c) kết nhận sau khử nhiễu trắng nhiễu đen, (d) kết thu nhận sau áp dụng lọc Blur 4.2.6 - Khử bóng Trong nhiều ứng dụng thực tế, vùng bóng đối tượng chuyển động xuất vùng cảnh Mỗi đối tượng chuyển động bóng di chuyển theo Việc phân biệt đâu vùng đối tượng đâu bóng thực việc khó khăn Trong luận văn này, tơi hạn chế ảnh hưởng bóng đối tượng chuyển động đến kết thu nhận phải cân nhắc hiệu việc khử bóng giá phải trả cho việc thơng qua tốc độ ứng dụng Một phương pháp đơn giản tốn ứng dụng luận văn để giảm bớt bóng đối tượng chuyển động Mơ hình phương pháp - 48 - trình bày hình – Ảnh đầu vào áp dụng lọc gradient sau đưa qua thuật tốn phát đối tượng chuyển động trình bày bên Bộ lọc ảnh áp dụng có cơng thức sau: G = (I ⊕ B) – (I \ B) Trong I ảnh đầu vào, G ảnh kết quả, B ma trận 3x3 phần tử lọc Giá trị ma trận B lọc gradient sau: 0 0 -1 -1 0 0 0 Lý mà lọc chọn dựa vào nhận xét điều kiện bình thường, vùng bóng đối tượng có khuynh hướng giảm dần độ sáng Do vùng bóng đối tượng bị loại bỏ đáng kể sau thực lọc này, giá trị độ sáng vùng bóng đối tượng thay đổi nhỏ, vùng biên đối tượng lại có độ sai biệt độ sáng lớn Có lưu ý lọc có sai số đường biên đối tượng kết thu nhận áp dụng lọc này, phép toán công thức làm mở rộng vùng biên đối tượng Để khắc phục điều bước sau việc khử bóng bước phục hồi đường biên vùng đối tượng chuyển động - 49 - Khung hình thời Bộ lọc Gradient Khung hình thời Bộ đệm khung hình Thuật tốn phát chuyển động Khung hình trước Phục hồi đường biên Vùng đối tượng chuyển động Hình - 7: Mơ hình phương pháp khử bóng Một số hạn chế phương pháp khử bóng này: • Việc khử bóng đối tượng phụ thuộc vào độ mịn bóng • Nếu bóng đối tượng nằm vùng có độ tương phản cấu trúc cao hiệu khơng cao • Bộ lọc loại bỏ số thơng tin hình ảnh gốc kết phát chuyển động bị suy giảm điều - 50 - (a) (c) (b) (d) Hình - 8: Minh họa q trình khử bóng Hình – (a) ảnh gốc, (b) kết nhận sau đối sánh ảnh, (c) kết nhận sau áp dụng lọc, (d) kết thu nhận sau khử bóng 4.3 - Cấu trúc chương trình 4.3.1 - Cấu trúc Chương trình CameraSupervisor gồm có phần: phần phát chuyển động, phần trợ giúp điềukhiểngiaothông phần mô nút giaothông - 51 - Dữ liệu vào từ Camera (Khung hình thời) Khung hình trước Tổng hợp khung hình Khung hình Phát chuyển động Vùng ảnh có đối tượng di chuyển Module phát chuyển động Module trợ giúp điềukhiểngiaothông Ước lượng thành phần chuyển động đường Bộ suy diễn để đưa trợ giúp điềukhiểngiaothông Xác định thông tin vùng chứa thông tin giaothông đường, trạng thái Tín hiệu điềukhiểngiaothơng Phát tín hiệu đèn giaothơng Module mơ nút giaothơng Hình - 9: Cấu trúc chương trình - 52 - 4.3.2 - Phần phát chuyển động Hệthống cài đặt theo phương pháp phát đối tượng chuyển động kết hợp phương pháp so sánh khác biệt đặc trưng khung hình thời với khung hình trước đó, khung hình thời với khung hình Khung hình tổng hợp tự động trình chạy 4.3.3 - Phần mô nút giaothông Nút giaothông mô chương trình gồm ngã tư hai đường chiều (hướng từ xuống từ trái qua) hệthống đèn giaothông gồm cột đèn tín hiệu Hệthống trụ đèn giaothơng gồm đầy đủ tín hiệu đèn Xanh – Vàng – ĐỏHệthống định nghĩa vùng thông tin đường, vùng bên bên trái mang nhiều thông tin quan trọng cho việc điềukhiển tín hiệu đèn giaothơng từ thơng tin phân tích thu nhận thơng qua chức phát đối tượng chuyển động chương trình Đèn tín hiệu giaothơng có ngun lý hoạt động hệthống đèn giaothông thật ngã tư Nó hoạt động theo thứ tự bình thường sau: • Xanh – Đỏ • Vàng – Đỏ • Đỏ - Xanh • Đỏ - Vàng Vào trường hợp đặc biệt tín hiệu đèn giaothơng có trạng thái như: • Tắt • Ngừng hoạt động (Vàng – Vàng) 4.3.4 - Phần trợ giúp điềukhiểngiaothông Các thông tin vùng thông tin đường giúp giới hạn thông tin di chuyển thu nhận qua phần phát chuyển động Hai vùng bên bên - 53 - trái hai vùng chứa thông tin quan trọng, hai vùng mà phương tiện giaothông qua nguy ùn tắc cao so với hai vùng lại Hệthống sử dụng thông tin từ phần mô nút giaothơng trạng thái tín hiệu đèn giao thơng, … kết hợp với thông tin thu nhận từ kết phần phát chuyển động áp dụng phương pháp suy luận đặc thù để đưa định hỗ trợ điềukhiển lại tín hiệu đèn giaothông phần mô 4.3.5 - Chương trình mơ nút giaothơng Ở chương trình (CameraSupervisor), khả cho thấy tương tác tín hiệu điềukhiểngiaothơng dòng xe cộ qua camera đoạn phim giaothông chưa rõ nét chưa tích hợp vào hệthốngđiềukhiểngiaothơng thực Chương trình (CRS – CrossRoadSimulator) viết thêm để mô hoạt động giaothơng ngã tư Nó minh họa rõ nét khả điềukhiểngiao thông, cho thấy tác dụng tín hiệu đèn giaothơng phương tiện tham gia giaothông Chương trình có giới hạn chương trình trên, mơ ngã tư đường chiều Tây Ỉ Đơng Bắc Ỉ Nam Các phương tiện giaothơng tham gia bao gồm: Xe con, xe tải xe gắn máy 4.4 - Mơi trường cài đặt • Hệđiều hành Windows XP • Chương trình CameraSupervisor: Ngơn ngữ lập trình Visual C + + 6.0 / DirectX 9.0 • Chương trình mơ nút giaothơng CRS: Java 4.5 - Cấu hình phần cứng • Pentium PIV, 3GHz • 1GB RAM • Camera (Webcam) - 54 - 4.6 - Các giao diện số tính 4.6.1 - Chương trình CameraSupervisor Hình - 10: Giao diện chương trình thử nghiệm, phần phát chuyển động - 55 - Hình - 11: Thể trình cập nhật hình - 56 - Hình - 12: Mơ nút giaothơngGiao diện chương trình đơn giản, thể chức phát đối tượng chuyển động mô nút giaothông ngã tư đường chiều • Tham số Radius dùng để điều chỉnh kích thước block Kích thước xác định theo công thức: Block size = Radius * + - 57 - Vị trí để xác định block tâm có phạm vi vng có bán kính Radius • Tham số Static Interval dùng để điều chỉnh khoảng thời gian Kt để cập nhật khung hình • Tham số Thresold1 Thresold2 dùng để điều chỉnh ngưỡng để khoảng xác định khoảng sai biệt đặc trưng block phát chuyển động Vị trí cột tín hiệu đèn giaothơng tọa độ góc vùng tứ giác xác định thơng tin đường thay đổi cách dùng chuột để di chuyển, thông tin tự động lưu giữ lại file Thesis.cfg Nếu file chưa tạo chương trình tạo số mặc định Khả thay đổi cài đặt để đáp ứng nhu cầu áp dụng nhiều địa hình thử nghiệm khác Hình - 13: Nút giaothơng có khả thay đổi tùy theo địa hình áp dụng - 58 - 4.6.2 - Chương trình CRS Hình - 14: Giao diện chương trình CRS Giao diện chương trình gồm có mơ hình giả lập ngã tư hai đường chiều Tây Ỉ Đơng Bắc Ỉ Nam, điềukhiển lưu lượng đường Ngồi chương trình hiển thị đồng hồ đếm ngược, thể khoảng thời gian lại tín hiệu đèn xanh vàng bật - 59 - Chương trình thiết kế với số tính sau: • Chương trình chạy với tốc độ 15 frames/giây • Mỗi loại xe có diện tích khác chúng lập trình để chạy đường dành riêng: o Xe con: chạy đường bên trái Phần đường chiếm 4/12 chiều rộng đường o Xe tải: chạy đường Phần đường chiếm 5/12 chiều rộng đường o Xe gắn máy: chạy đường bên phải Phần đường chiếm 3/12 chiều rộng đường • Thời lượng đèn vàng giây, thời lượng đèn xanh tối đa 60 giây Tuy nhiên thời lượng đèn xanh ước đoán trước dựa vào số phương tiện giaothông đợi đèn đỏ tín hiệu đèn xanh chuẩn bị bật Công thức để ước lượng thời gian đèn xanh là: Min(60, Số_phương_tiện_đang_đợi_đèn_đỏ * 3) giây • Trong q trình điềukhiển lưu lượng đường, số lượng tối đa phương tiện giaothông tham gia lớn số lượng phương tiện giaothông hữu đường có thêm số phương tiện bổ sung vào Ngược lại số nhỏ hơn, phương tiện tham gia đường khỏi tầm nhìn mơ phỏng, chúng khơng tham gia trở lại số phương tiện lại vượt số chọn • Khi phương tiện vượt khỏi tầm nhìn mơ phỏng, trở rời khỏi hệthống trở lại xác xuất hoạt động trở lại đạt đến Xác suất 90/00 • Trong q trình chạy, đường có số phương tiện hoạt động số tối đa, phương tiện phát sinh bổ sung ngẫu nhiên với xác suất Xác suất phát sinh ngẫu nhiên loại phương tiện là: Xe – 45%, xe tải – 30% xe máy 25% - 60 - • Mỗi loại phương tiện có hành động khởi động, chạy bình thường, tăng tốc, thắng • Mỗi phuơng tiện giaothơng có xác suất tăng tốc nhằm làm cho giaothông đa dạng Xác suất 30/00 Nếu xác suất xảy phương tiện tăng tốc để chạy nhanh để vượt lên xe khác • Trong q trình chạy phương tiện giaothơng tự ước đốn đoạn đường trước mặt, có phương tiện khác cản đường tự giảm tốc dừng lại tránh Nếu tín hiệu đèn vàng bật lên, phương tiện giaothơng tự ước đốn xem có bị lố vạch sơn dừng hay chưa Nếu bị lố tiếp tục chạy qua ngã tư, ngược lại tự dừng lại đợi đèn đỏ trước vạch sơn dừng sau phương tiện khác trước mặt • Hiện hệ mô xây dựng cho loại phương tiện khác chạy đường quy định, chúng xuất phát vị trí đường giữ nguyên vị trí chưa hồn thiện chức tránh né lạng lách Chức hoàn thiện giai đoạn phát triển sau chương trình • Người sử dụng can thiệp vào trình điềukhiển đèn cách bấm nút phải chuột để cưỡng chế chuyển trạng thái đèn Chương trình có trạng thái đèn sau: o Xanh – Đỏ: Tây Ỉ Đơng: Xanh; Bắc Ỉ Nam: Đỏ o Vàng – Đỏ: Tây Ỉ Đơng: Vàng; Bắc Ỉ Nam: Đỏ o Đỏ - Xanh: Tây Ỉ Đơng: Đỏ; Bắc Ỉ Nam: Xanh o Đỏ - Vàng: Tây Ỉ Đơng: Đỏ; Bắc Ỉ Nam: Vàng ... giúp điều khiển giao thông Ước lượng thành phần chuyển động đường Bộ suy diễn để đưa trợ giúp điều khiển giao thông Xác định thông tin vùng chứa thông tin giao thơng đường, trạng thái Tín hiệu điều. .. phim giao thơng chưa rõ nét chưa tích hợp vào hệ thống điều khiển giao thơng thực Chương trình (CRS – CrossRoadSimulator) viết thêm để mô hoạt động giao thông ngã tư Nó minh họa rõ nét khả điều khiển. .. - Phần mơ nút giao thơng Nút giao thơng mơ chương trình gồm ngã tư hai đường chiều (hướng từ xuống từ trái qua) hệ thống đèn giao thơng gồm cột đèn tín hiệu Hệ thống trụ đèn giao thông gồm đầy