Ứng dụng xử lý ảnh để đếm số lượng xe ô tô trong nội thành Đà Nẵng

Kỷ yếu Hội nghị KHCN Quốc gia lần thứ XI về Nghiên cứu cơ bản và ứng dụng Công nghệ thông tin (FAIR); Hà Nội, ngày 09-10/8/2018  
DOI: 10.15625/vap.2018.00071  
NG DNG XẢNH ĐỂ ĐẾM SỐ LƯỢNG XE Ô TÔ  
TRONG NỘI THÀNH ĐÀ NNG  
Đoàn Phước Min1, Tng ThKim Quy2, Trn Thế Vũ3, Hunh Hữu Hưng4  
1Khoa Kỹ thuật & Công nghệ, Trường Đại học Trà Vinh  
2Sinh viên cao học, Trường Đại học Bách khoa, Đại học Đà Nẵng  
3Viện Nghiên cứu và Đào tạo Việt Anh, Đại học Đà Nẵng  
4Khoa Công nghệ Thông tin, Trường Đại học Bách khoa, Đại học Đà Nẵng  
TÓM TẮT: Tắc nghẽn giao thông là một vấn đề lớn cần giải quyết triệt để đối với tất cả các thành phố lớn trong đó có thành phố  
Đà Nẵng. Để điều phối được mật độ giao thông, trước hết cần phải biết được số lượng xe trung bình tham gia lưu thông trên các  
đoạn đường trọng tâm trong thành phố. Trong bài báo này chúng tôi đề cập đến việc xây dựng ứng dụng đếm số lượng xe ô tô trong  
nội thành Đà nẵng. Bài báo tập trung nghiên cứu vào cách dò tìm đối tượng dựa trên phương pháp trừ nền kết hợp với dò tìm đóm  
loang (blob). Bên cạnh bài báo còn thực nghiệm các phương pháp khác để so sánh kết quả một cách khách quan nhất. Các kết quả  
đạt được bao gồm: (1) So sánh hiệu năng của Phương pháp bộ phân mảnh tương thích mức điểm ảnh (PBAS) với hai thuật toán trừ  
nền cơ bản nhất là phương pháp khác biệt khung hình tĩnh phương pháp khác biệt khung hình, (2) Đánh giá ảnh hưởng của các  
tham số trong thuật toán trừ nền đến quá trình nhận dạng, (3) Đánh giá hệ thống với các video đầu vào khác nhau.  
Từ khóa: Phương pháp trừ nn, dò tìm Blob, khung hình tĩnh, khung hình liên tiếp, xnh…  
I. GIỚI THIỆU  
Ngày nay, việc sử dụng xe cơ giới ngày một tăng làm cho tình trạng kẹt xe đang ngày càng nghiêm trọng. Việc  
tắc nghẽn giao thông đã làm cho chi phí của người tham gia tăng cao, tốn thời gian di chuyển. Ùn tắc giao thông cũng  
khiến cho người điều khiển phương tiện cảm thấy ức chế, mệt mỏi và phát sinh một số vấn đề vi phạm giao thông như:  
lấn làn, vượt đèn đỏ.  
Theo thống kê của Ủy ban An toàn giao thông quốc gia cho biết trong 8 tháng đầu năm 2017 cả nước có gần  
13000 vụ tai nạn giao thông đường bộ làm cho hơn 5000 người chết và gần 11000 người bị thương. Theo đó, bình quân  
mỗi năm ở Việt Nam có khoảng 8670 người chết được ghi nhận tại hiện trường. Nếu theo Bộ Y tế, năm 2015 có  
khoảng 15386 người chết, nghĩa là gần gấp đôi số người chết được ghi nhận tại hiện trường do cảnh sát giao thông  
thống kê [14]. Theo thống kê của Bộ Giao thông Vận tải, tính riêng tháng 12/2014, có đến 21.952 xe ôtô, 194.482 xe  
môtô được đăng kí mới toàn quốc [17]. Do đó, việc nghiên cứu phương pháp phát hiện giao thông tự động là rất cần  
thiết để giúp tạo ra các luồng giao thông trơn tru, an toàn và hiệu quả, dẫn đến việc phân tích giao thông một cách đúng  
đắn, điều chỉnh việc quản lý cũng như phân phối các tín hiệu điều khiển phù hợp.  
Các nhà nghiên cứu trong nước và trên thế giới hiện nay quan tâm rất nhiều đến hệ thống cảnh báo ùn tắc giao  
thông. Đã có rất nhiều phương pháp được đưa ra để giải quyết vấn đề ùn tắc thể hiện trong [1][2][3][5][8]. Tuy nhiên  
có hai phương pháp đang được quan tâm nhất đó là: dựa vào cảm biến tại chỗ [2] và sử dụng kỹ thuật nhận dạng hình  
ảnh để phân tích mật độ giao thông [3]. Phương pháp xử lý hình ảnh từ video và cách phát hiện đối tượng đã được  
nghiên cứu cho mục đích ước tính lưu lượng xe và lưu lượng giao thông [1]. Các phương pháp như phát hiện điểm,  
phát hiện cạnh được sử dụng trong quá trình dò tìm và theo dõi xe [7]. Có thể nói rằng một trong những nghiên cứu  
quan trọng nhất phát hiện đối tượng trong ảnh [5] tạo tiền đề cho các hệ thống phát hiện đối tượng từ video [9].  
Trong một số công trình như [10], phương pháp phân biệt hình ảnh phía trước và phía sau được sử dụng để trích xuất  
các phương tiện di chuyển trong chế độ định tuyến. Một số nghiên cứu như [11] và [12] đã chứng minh rằng việc sử  
dụng các vectơ đặc trưng từ vùng hình ảnh có thể cực kỳ hiệu quả cho các mục tiêu phát hiện xe. Một số nghiên cứu  
khác [13] trình bày ước tính kích thước phương tiện chính xác bằng cách sử dụng một tập hợp các hàm ánh xạ tọa độ.  
Hơn nữa, một số nhà nghiên cứu đã phát triển một loạt các thuật toán tăng cường để phát hiện đối tượng bằng cách sử  
dụng các phương pháp học máy có thể phát hiện và phân loại các đối tượng di chuyển theo cả loại và màu sắc như [15].  
Trong [4] hiển thị tổng quan về các bước trừ nền: Bước đầu sẽ khởi tạo nền bằng N khung hình được thu nhận nền đầu  
tiên mà đối tượng đang đứng yên. Sau đó, phát hiện đối tượng chuyển động được thực hiện thông qua phát hiện  
foreground bao gồm phân loại các điểm ảnh như tiền cảnh hoặc nền bằng cách so sánh hình nền và khung hiện tại.  
Cuối cùng cần phải duy trì nền để cập nhật hình nền theo thời gian. Hai bước cuối sẽ được thực thi lập lại liên tục trong  
suốt thời gian xử lý.  
Mặc dù có rất nhiều nghiên cứu ngoài nước đã ứng dụng mạnh mẽ và vận hành thực tế, tuy nhiên không thể áp  
dụng y khuôn vào giao thông Việt Nam. Đặc thù giao thông ở Việt Nam rất phức tạp, như địa hình giao thông, phương  
tiện giao thông, văn hóa giao thông. Đặc biệt là phương tiện tham gia giao thông ở Việt Nam rất đa dạng như: Xe máy,  
xe đạp, xe đạp điện, xe ô tô 3 bánh, xe ô tô 4 bánh, xe tải, xe bò, xe công nông,... bên cạnh đó còn có người đi bộ, gia  
súc lưu thông trên đường. Bài báo này sẽ tập trung giải quyết vấn đề đếm số lượng xe ô tô lưu thông trên đường ở các  
điểm có camera trên địa bàn thành phố Đà Nẵng.  
546  
ỨNG DỤNG XỬ LÝ ẢNH ĐỂ ĐẾM SỐ LƯỢNG XE Ô TÔ TRONG NỘI THÀNH ĐÀ NẴNG  
Bài báo bao gồm phần đầu sẽ giới thiệu về các công trình đã được nghiên cứu gồm những hệ thống đã và đang  
sử dụng, các phương pháp tiếp cận. Tiếp theo trong phần 2, chúng tôi sẽ trình bày chi tiết hệ thống đề xuất. Phần kết  
quả thực nghiệm sẽ được trình bày ngay sau đó và cuối cùng là phần kết luận.  
II. HỆ THỐNG ĐỀ XUẤT  
Dữ liệu đầu vào của hệ thống gồm các video thu được từ camera đặt ở góc đường trong nội thành Đà Nẵng. Sau  
khi có được dữ liệu này, hệ thống sẽ tiến hành xử lý để tách ra từng khung hình trên mỗi video. Mỗi khung hình sẽ  
được xử lý bởi phương pháp loại trừ hình nền nhằm biến đổi hình ảnh gốc (có màu sắc) thành mặt nạ nhị phân chỉ chứa  
hai loại điểm ảnh là đen và trắng. Trong đó, điểm ảnh đen tương ứng với background và điểm ảnh trắng tương ứng với  
foreground. Bước tiếp theo sử dụng hình ảnh thu được cùng với phương pháp nhận dạng đối tượng để khoanh vùng các  
đối tượng di chuyển. Ứng với chiều cao và chiều rộng tương ứng của các loại xe, ta có thể nhận dạng đối tượng có  
được có thỏa mãn yêu cầu hay không? Nếu có, tăng tổng số lượng xe đếm được và cuối cùng xuất tổng số xe ra màn  
hình. Mô hình đề xuất của chúng tôi như sau:  
Hình 1. Mô hình hệ thống đề xuất  
2.1. Tiền xử lý  
Đầu vào là một video quay con đường với xe lưu thông, video này có thể là bất cứ loại file video ở định dạng  
nào. Ở bước này, ta tiến hành tách lấy từng khung hình từ video, biến đổi hình ảnh này thành một đối tượng hình ảnh  
số để làm đầu vào cho bước tiếp theo.  
Chương trình đọc file video và tách thành từng frame, các frame này sẽ được xử lý và tạo thành đối tượng Mat  
để chứa các thông số tương ứng và là đầu vào cho bước tiếp theo. Mat về cơ bản là một lớp với hai phần dữ liệu: Ma  
trận tiêu đề (matrix header chứa các thông tin như kích cỡ ma trận, phương thức dùng để lưu trữ) và một con trỏ đến  
ma trận chứa giá trị điểm ảnh.  
2.2. Loại trừ hình nền (Background Subtraction PBAS)  
Thuật toán tuân theo mô hình phi tham số, nghĩa là mỗi điểm ảnh xi được mô hình hóa bằng một mảng các giá  
trị nền quan sát gần nhất[6]. Phương pháp này bao gồm các thành phần được mô tả như một máy trạng thái. Là một  
thành phần trung tâm, khối quyết định sẽ quyết định một điểm ảnh là foreground hay không dựa trên hình ảnh hiện tại  
( )  
( )  
và hình nền       Quyết định này dựa vào ngưỡng     của mỗi điểm ảnh. Hơn nữa, hình nền đã được cập nhật theo  
 
 
( )  
thời gian để cho phép thay đổi nền dần dần. Trong mô hình này, việc cập nhật dựa trên tham số học     của mỗi  
 
điểm ảnh. Ý tưởng chính của phương pháp này là hai ngưỡng của mỗi điểm ảnh tự động thay đổi dựa trên việc ước tính  
sự thay đổi của nền.  
Mục đích của mỗi phương thức phân đoạn hình nền là để đưa ra được quyết định nhị phân, để xác định một  
điểm ảnh thuộc background hay foreground. Quá trình ra quyết định lấy hình ảnh đầu vào và so sánh nó một cách nào  
đó vi hình nn. Trong trường hp này, hình nn  (  ) được xác định bởi một mảng gồm N giá trị điểm ảnh được  
 
quan sát gần nhất.  
( ) ( )+  
                              
    
*
( )  
( )  
(1)  
 
 
 
 
 
Đoàn Phước Miền, Tống Thị Kim Quy, Trần Thế Vũ, Huỳnh Hữu Hưng  
547  
Một điểm nh xi được quyết định thuc vbackground nếu giá trị điểm nh ca nó  (  ) gần hơn một ngưỡng  
 
quyết định nhất định  (  ) đến ít nhất   
của N giá trị background. Vì vậy, mặt nạ nhị phân được tính như sau:  
 
    
( )  
                 ( (            ))    
    
    
 
    
 
    
  {  
(2)  
                                      
Ở đây, F = 1 nghĩa là foreground. Do đó, có thể thấy rằng việc quyết định liên quan đến hai thông số: Khoảng  
( )  
cách ngưỡng     được xác định cho mỗi điểm ảnh riêng biệt và có thể thay đổi tự động. Số lượng tối thiểu   
là  
 
    
một tham số cố định toàn cục.  
Việc cập nhật hình nền B là cần thiết để tính toán những thay đổi trong background như: thay đổi ánh  
sáng, bóng và các hình nền di chuyển như cây cối …  
Vì khu vực foreground không thể được dùng cho việc cập nhật, các hình nền chỉ được cập nhật cho những điểm  
( )  
ảnh hiện tại đang là background (ví d       ). Cp nhật có nghĩa rằng cho mt s          (chọn một cách ngẫu  
 
( )  
( )  
 
nhiên), tương ứng giá trị hình nền     được thay thế bng giá trị điểm nh hin ti     . Nó cho phép giá trị điểm  
 
 
( )  
ảnh hiện tại được "học" vào hình nền. Tuy nhiên, vic cp nht này chỉ được thc hin vi xác sut           . Trái  
 
( )  
( )  
 
li, skhông có cp nhật nào được thc hin. Do đó, các tham s    định nghĩa tỉ lcp nht.     càng cao, khả  
 
năng xảy ra cập nhật càng ít.  
( )  
Chúng ta cũng cập nhật (với xác sut           ) một điểm ảnh lân cận được chọn ngẫu nhiên     
 
 
 (  ). Như vậy, hình nền   (  ) tại điểm nh lân cận này được thay thế bi giá trị điểm nh hin ti  (  ).  
 
 
 
 
Trong một chuỗi video, có thể có khu vực với hình nền động cao (ví d: nước, cây trong gió ..) và các khu vc  
có ít hoc thậm chí không có thay đổi (ví d: bức tường). Vmặt ý tưởng, đối vi các khu vc có sự thay đổi  
cao, ngưng  (  ) nên được tăng để không bao gồm các đối tượng foreground. Trong khi đối vi các vùng  
 
tĩnh,  (  ) nên là con sthp bi nhng sai lch nhỏ như vy dẫn đến quyết định cho foreground. Tóm li, ngưng  
 
 (  ) cần phải có khả năng tự động điều chỉnh cho phù hợp. Để làm được điều này, cần phải có một thước đo độ động  
 
của background được thực hiện như sau:  
Đầu tiên, bên cnh việc lưu một mng các giá trị điểm nh được quan sát gn nht trong hình nn  (  ), ta cũng  
 
( )  
( )  
to mt mng       *            (  )+ của khoảng cách quyết định tối thiểu. Bất cứ khi nào một cập nhật của  
 
 
 
 
 
( )  
( ) ( )  
            (          ) được viết  
 
  (  ) được thực hiện, khoảng cách được quan sát tối thiểu hiện tại   
 
 
    
 
 
 
 
vào mảng này   (  )     (  ). Do đó, các lịch sử của khoảng cách quyết định nhỏ nhất được tạo ra. Trung bình  
 
 
    
 
 
̅
( )  
của các giá trị này   
 
 
  (  ) là một thước đo của background động. Giả sử một background hoàn toàn  
    
 
      
 
̅
( )  
  sẽ bằng 0. Đối với các background động hơn, sẽ luôn có một độ lệch (nhỏ) của giá trị đang quan sát đối  
 
tĩnh,   
    
̅
( )  
sẽ cao hơn. Với ước tính này của background động, ngưỡng quyết  
 
với những giá trị đã quan sát và vì thế,   
 
    
định có thể tự điều chỉnh như sau:  
̅
( )  
( )  
( )  
      
      
      (      )              
    
    
 
 
    
 
 (  )   {  
(3)  
 
( )  
      (      )        
    
    
 
Trong đó,   
,   
là nhng tham scố định. Nó có thể được xem là bộ điều khiển động cho các biến  
        
      
̅
̅
    
trng thái  (  ). Cho một bất biến     không đổi, ngưỡng quyết định  (  ) tiếp cận kết quả của         . Vì  
 
    
 
 
 
      
vy, mt sự gia tăng trong background động (xảy ra đột ngt) dẫn đến sự tăng (chậm) ca  (  ) đối vi một ngưỡng  
 
quyết định  (  ) cao hơn.  
 
Việc cập nhật tốc độ độc lập với các trạng thái foreground F(xi), cuối cùng, mỗi đối tượng sẽ được sáp nhập vào  
background tùy thuộc vào tham số "học" T(xi). Để giảm bớt các vấn đề, ý tưởng là đưa ra một bộ điều khiển động (thứ  
hai) cho T(xi). Như vậy, xác suất của việc "học" background tăng (chậm) khi một điểm ảnh là background và giảm  
(chậm) khi một điểm ảnh là foreground. Vấn đề ở đây là phân loại foreground sai thì sẽ được "học" từ từ vào  
background và vì vậy, vẫn còn foreground.  
Có thể giả sử rằng các điểm ảnh phần lớn được phân loại sai là foreground trong các khu vực background động  
cao. Như vậy, sức mạnh của việc điều chỉnh trong bộ điều khiển có thể được điều chỉnh bằng cách sử dụng ước lượng  
̅
động     . Ta định nghĩa:  
    
 
 
    
( )  
    
( )  
             
 
 
 
̅
 
 
    
 
 (  )   {  
(4)  
 
 
    
( )  
    
( )  
             
 
 
 
̅
 
 
    
 
Với   ,   là các tham số cố định. Có các tham số khác nhau cho hai trường hợp, bởi vì ta giả sử rằng phần  
        
lớn thời gian, các điểm ảnh là background (đúng trong hầu hết các trường hợp). Lựa chọn các thông số độc lập cho  
background và foreground vì thế sẽ dẫn đến sự cân bng ca  (  ). Hơn nữa, ta định nghĩa cận trên và cận dưới  
 
548  
ỨNG DỤNG XỬ LÝ ẢNH ĐỂ ĐẾM SỐ LƯỢNG XE Ô TÔ TRONG NỘI THÀNH ĐÀ NẴNG  
 
        
, các giá trị này không thể vượt quá phạm vi ràng buộc. Bộ điều khiển trên đảm bảo rằng trong  
      
      
̅
trường hợp background động cao (nghĩa là     lớn), tham s"hc"  (  ) vẫn không đổi hoc chỉ thay đổi rt  
    
 
 
nh. Trong trưng hp này, vic phát hin foreground sai skhông tn ti lâu, bi vì xác suất để cp nht        
 (  ) không đạt được giá trị 0 rất nhanh. Trong một trường hợp lý tưởng khác của một background hoàn toàn tĩnh, bộ  
 
phân loi foreground là khá vng chc, vì thế  (  ) tăng lên nhanh chóng, hình nền được kiểm định mà không cần  
 
nhiều cập nhật.  
Nhng hình ảnh đầu vào  (  ) là một hình ảnh màu ba kênh (R,G,B). Ở đây, ta xử lý từng kênh độc lp và chy  
 
 
 
 
(
)
( )  
thut toán trong 3 lung song song. Kết qu (  ) là một bộ các toán tử của ba phân thức                 (  ).  
 
( )  
Đối vi mi kênh màu, ngoài giá trị điểm nh, ta cũng sử dụng biên độ gradient. Vì vy, đầu vào     
 
 
 
 
 
 
( )  
( )  
( )  
*        (  )+ bao gồm giá trị điểm ảnh của chính nó   
 
và biên độ gradient   (  ) tại điểm ảnh đó. Theo  
 
 
 
 
 
 
( )  
( )  
đó, mỗi phần tử của lịch sử background       *        
  + (ở phương trình (1)) cũng bao gồm hai phần tương  
 
 
 
 
 
 
ứng. Để tính khoảng cách trong phương trình (2), ta dùng phương trình sau:  
 
 
 
 
 
( ) ( )  
    (          )   
|
    
( )  
( )| | ( )  
    
( )|  
      
 
 
 
    
 
 
(5)  
 
 
 
 
 
 
 
 
̅̅̅̅  
 
 
 
̅̅̅̅  
Trong đó,   trung bình độ lớn gradient trong khung hình quan sát cuối cùng. Vì vậy, chiếm tầm quan  
 
̅̅̅̅  
 
trọng của giá trị điểm ảnh so với cường độ gradient.  
2.3. Trích xuất đối tượng  
Kết quả của bước trừ nền là một mặt nạ nhị phân của khung hình hiện tại ảnh đầu vào. Mặt nạ nhị phân này sẽ  
tiếp tục được đưa vào khối BlobTracking để thực hiện tối ưu hóa bằng biến đổi hình thái học và sau đó phương pháp  
dò blob sẽ được áp dụng lên đầu ra của biến đổi hình thái học để có kết quả là các blob được đánh nhãn riêng biệt. Các  
phương tiện giao thông (ô tô, xe máy) sẽ được xác định dựa trên kích thước của chúng và được ghi nhận. Đầu ra cuối  
cùng của quá trình này là khung hình với các phương tiện giao thông đã được dựng lại cùng với kết quả đếm số lượng  
phương tiện tham gia giao thông.  
Với cửa sổ PBAS là kết quả của quá trình trừ nền và Blob Mask là kết quả của quá trình biến đổi hình thái học,  
các điểm nhiễu đã bị loại bỏ đáng kể.  
Hình 2. Mặt nạ nhị phân trừ nền và biến đổi hình thái học  
Sau giai đoạn xử lý nhiễu ở bước biến đổi hình thái học, mặt nạ nhị phân mới segmentated sẽ tiếp tục được đưa  
vào bước xử lý chính và quan trọng nhất của quá trình trích xuất đối tượng là đánh nhãn để phân biệt các đối tượng và  
kết quả đầu ra sẽ là một mảng blobs bao gồm các blob trong khung hình hiện tại.  
Với mỗi một blob được coi như một lớp đối tượng có các thuộc tính và phương thức. Do các phương tiện giao  
thông được lọc theo kích thước của chúng (có kích thước lớn hơn người, động vật) và để phục vụ render, có 5 thuộc  
Đoàn Phước Miền, Tống Thị Kim Quy, Trần Thế Vũ, Huỳnh Hữu Hưng  
549  
tính cần lưu ý là area, minx, miny, maxx, maxy. Trong đó area chính là số điểm ảnh biểu diễn cho đối tượng đó và các  
giá trị min, max là các giới hạn tọa độ của đối tượng xét theo mặt phẳng 2 chiều.  
Một điểm ảnh   thuộc biên của đối tượng phải luôn có ít nhất 1 điểm lân cận là điểm ảnh đen, do vậy để tìm ra  
 
điểm biên tiếp theo của nó, có thể thực hiện quét các điểm lân cận của   bắt đầu từ điểm   bên cạnh điểm ảnh đen đã  
 
 
xác định trước theo chiều kim đồng hồ. Từ đó ta cũng có thể rút ra được một nguyên tắc, với   là điểm biên tiếp theo  
 
của   
luôn có một điểm ảnh đen liền kề trước   theo vòng quét của điểm   . Như vậy, ta có 4 nguyên tắc sau để  
    
      
xác định một điểm đen liền kề với   như sau:  
 
Nếu   là lân cận phải (R) hoặc dưới phải (DR) của   , luôn có một điểm ảnh đen liền kề là lân cận trên (U)  
của   ;  
 
    
 
Nếu   là lân cận trái (L) hoặc trên trái (UL) của   , luôn có một điểm ảnh đen liền kề là lân cận dưới (D)  
của   ;  
 
    
 
Nếu   là lân cận dưới (D) hoặc dưới trái (DL) của   , luôn có một điểm ảnh đen liền kề là lân cận phải (R)  
của   ;  
 
    
 
Nếu   là lân cận trên (U) hoặc trên phải (UR) của   , luôn có một điểm ảnh đen liền kề là lân cận trái (L)  
 
    
của   .  
 
2.4. Đếm xe  
Để tránh đếm các blob tương ứng với đối tượng không mong muốn như người, động vật hoặc nhiễu thuộc  
background, ta cần xác định phạm vi kích thước của các phương tiện giao thông và áp dụng bộ lọc để loại bỏ các đối  
tượng không mong muốn đó. Thực chất, kích thước của một đối tượng được thể hiện qua giá trị area của một blob, với  
area chính là số điểm ảnh cấu thành nền blob đó. Sau khi có được tập các đối tượng mong muốn là các phương tiện  
giao thông, quá trình trích xuất và đếm số lượng sẽ được áp dụng để vẽ khung chữ nhật bao quanh đối tượng và hiện  
thị số lượng phương tiện đang xuất hiện trong khung hình.  
Tuy nhiên, như đã nêu trước đó, khuyết điểm của phương pháp này là khi một số đối tượng bị chồng lấn thì quá  
trình trích xuất đối tượng sẽ coi đó là 1 đối tượng dẫn đến nhận dạng và đếm không chính xác.  
III. KẾT QUẢ THỰC NGHIỆM  
Chúng tôi sẽ thực hiện bằng giải pháp đề xuất để nhận dạng xe ôtô. Sau đó, mở rộng các tham số để có thể đếm  
được các loại phương tiện giao thông khác. Đồng thời, tiến hành ba bài thực nghiệm để đánh giá hiệu năng của việc  
nhận dạng phương tiện giao thông dựa trên phương pháp trừ nền PBAS kết hợp với trích xuất đối tượng dùng kỹ thuật  
dò biên đã trình bày ở trên. Các bài thử nghiệm bao gồm: (1) So sánh hiệu năng của PBAS với hai thuật toán trừ nền cơ  
bản nhất là Static Frame Difference và Frame Difference, (2) Đánh giá ảnh hưởng của các tham số trong thuật toán trừ  
nền đến quá trình nhận dạng, (3) Đánh giá hệ thống với các video đầu vào khác nhau.  
3.1. Nguồn dữ liệu Camera  
Trong bài báo này, chúng tôi sẽ đề xuất xây dựng ứng dụng đếm số lượng xe sử dụng camera giao thông trong  
nội ô thành phố Đà Nẵng. Dữ liệu video trong bài báo chúng tôi đề cập từ nguồn camera công cộng tại địa chỉ  
http://camera.0511.vn/ được đọc trực tiếp theo thời gian thực.  
Hình 3. Nguồn dữ liệu Camera  
550  
ỨNG DỤNG XỬ LÝ ẢNH ĐỂ ĐẾM SỐ LƯỢNG XE Ô TÔ TRONG NỘI THÀNH ĐÀ NẴNG  
3.2. Môi trường và công cụ sử dụng  
Chúng tôi sử dụng hệ điều hành Ubuntu phiên bản 14.04 sau đó nâng cấp lên phiên bản 16.04 để cài đặt các ứng  
dụng liên quan. Tốc độ Ram trên máy là 8GB, Bộ xử lý Corei5, Ổ cứng SSD 120GB.  
Ngôn ngữ lập trình được sử dụng là Visual C++ kết hợp với thư viện Opencv3.0 và bộ nhận dạng phương tiện  
giao thông open source [16].  
3.3. Thực nghiệm trên bài toán nhận dạng xe ôtô  
Áp dụng các bước theo mô hình đề xuất, chúng tôi đã tiến hành thử nghiệm sử dụng đầu vào là một video. Kết  
quả chương trình đã nhận dạng được xe ôtô trong từng khung hình. Kết quả được thể hiện ở hình bên dưới.  
Hình 4. Kết quả nhận dạng xe ôtô từ một video đầu vào  
3.4. Thực hiện mở rộng nhận dạng các phương tiện giao thông khác  
Chúng tôi thay đổi các thông số của kích thước khung hình mong muốn khi thực hiện bước lọc đối tượng (theo  
phương pháp Blob Tracking). Ứng với sự thay đổi đó, ta có thể dễ dàng giới hạn các đối tượng mà ta muốn nhận dạng.  
Hình dưới đây mô tả cụ thể các tham số nhỏ nhất (minArea) và lớn nhất (maxArea) của một đối tượng thỏa mãn yêu  
cầu tìm kiếm của ta. Theo đó, với minArea = 400, chương trình demo thực hiện nhận dạng các đối tượng tương ứng với  
kích thước của xe máy, xe đạp và xe ôtô. Trong khi đó, với minArea = 500, chương trình chỉ nhận dạng được xe ôtô.  
Hình 5. Các tham số cấu hình cho việc nhận dạng đối tượng blob  
Hình 6. Kết quả nhận dạng mở rộng  
Đoàn Phước Miền, Tống Thị Kim Quy, Trần Thế Vũ, Huỳnh Hữu Hưng  
551  
Hình 7. Kết quả nhận dạng mở rộng xe mô tô 2 bánh  
3.5. Đánh giá hiệu năng của các thành phần ảnh hưởng tới bài toán nhận dạng xe  
1. So sánh hiệu năng trừ nền của thuật toán PBAS với static frame difference và frame difference  
Mục đích của bài thử nghiệm này chính là để so sánh hiệu năng của các thuật toán trừ nền PBAS với hai thuật  
toán trừ nền cơ bản nhất là Static Frame Difference và Frame Difference dựa trên thời gian xử lý, tỷ lệ nhận dạng thành  
công. Việc nhận dạng sẽ được thực hiện trên cùng một video đầu vào.  
Bảng 1. So sánh hiệu năng của PBAS, Static Frame Difference và Frame Difference  
Tỷ lệ nhận  
đối tượng  
chính xác  
Frame per  
second (FPS) tượng thực tìm thấy  
Số đối  
Số blob  
Số đối tượng/blob  
nhận dạng đúng  
Tỷ lệ nhận  
blob chính xác  
Thuật toán  
Static  
Difference  
Frame  
12.05  
14.5  
2.9  
143  
143  
143  
631  
125  
137  
97  
93  
67,83 %  
65,03 %  
75,52 %  
15,37 %  
67,88 %  
78,83 %  
Frame Difference  
PBAS  
108  
Như vậy có thể thấy do tính đơn giản về phương pháp xây dựng hình nền mà Static Frame Difference và Frame  
Difference có tốc độ xử lý nhanh hơn hẳn so với PBAS. Tuy nhiên, xét về độ chính xác của việc nhận dạng thì PBAS  
có ưu thế vượt trội. Lưu ý rằng, đặc biệt thuật toán Static Frame Different có số lượng blob tìm thấy sai lệch lớn so với  
số lượng đối tượng thực. Điều này là do khi điều kiện nền thay đổi (như độ sáng…) thì sẽ có sự sai khác so với nền tĩnh  
được chọn ban đầu dẫn đến các điểm ảnh thuộc nền ở các khung hình sau bị nhận dạng thành. Các trường hợp này còn  
gọi là positive sai.  
Hình 8. Nhận dạng sai nền trong Static Frame Difference  
Do đó khi đánh giá hiệu năng, ngoài tỷ lệ nhận đối tượng chính xác (số đối tượng nhận dạng được trên số đối  
tượng thực) ta cần quan tâm tới tỷ lệ nhận dạng blob chính xác với tỷ lệ này chính là số lượng blob đúng là đối tượng  
trên số lượng blob tìm thấy. Như ở thực nghiệm trên tuy Static Frame Difference có tỷ lệ nhận dạng đối tượng tốt hơn  
552  
ỨNG DỤNG XỬ LÝ ẢNH ĐỂ ĐẾM SỐ LƯỢNG XE Ô TÔ TRONG NỘI THÀNH ĐÀ NẴNG  
Frame Diffrence nhưng khi đánh giá chung thi Frame Difference vẫn là thuật toán tốt hơn do số lượng false positive  
gần như không có.  
2. Đánh giá ảnh hưởng của các tham số trong thuật toán trừ nền đến quá trình nhận dạng  
Để đánh giá ảnh hưởng của các tham số, chúng tôi tiến hành lần lượt các thay đổi về giá trị N và giá trị ngưỡng  
R. Với giá trị N tương ứng 10, 20, 100. Kết quả cho thấy nếu giá N quá nhỏ thì tỷ lệ điểm hình nền bị xác định sai  
thành foreground là khá cao dẫn đến một số phần của nền bị nhận diện thành đối tượng. Còn nêú giá trị N quá cao thì  
ngược lại, các điểm ảnh thuộc foreground sẽ bị nhận thành nền dẫn đến tình trạng một dối tượng có thể bị nhận dạng  
thành hai đối tượng do bị cắt xén thành hai blob. Ngoài ra, N càng cao thì hệ thống sẽ mất nhiều thời gian xử lý hơn do  
một điểm ảnh sẽ phải có số lần so sánh với N nền nhiều hơn. Qua thực nghiệm, cho thấy khoảng giá trị 20<N<30 là  
phù hợp với video test. Với ngưỡng R quyết định khoảng cách an toàn tối thiểu để một điểm ảnh không bị xác định là  
quá gần với đặc tính của nền. Thực nghiệm với các trường hợp R=5, 18, 35 cho thấy khi R quá nhỏ sẽ dẫn đến các  
điểm ảnh dễ dàng được coi là điểm ảnh foreground còn R quá lớn thì hàng loạt điểm ảnh thuộc đối tượng có màu sắc  
tương đối giống hình nền sẽ bị nhận thành nền. Kết quả này cũng phù hợp với lý thuyết khi ngưỡng R càng cao thì yêu  
cầu về khoảng cách giữa một điểm ảnh của khung hình I(xi) so Bk(xi) càng cao dẫn đến số lượng điểm ảnh không đáp  
ứng được yêu cầu đó càng nhiều và các điểm ảnh đó sẽ dễ bị đánh giá thành nền. Kết quả đánh giá cho thấy 15<R<20  
là hợp lý để đảm bảo mặt nạ nhị phân không bị sai lệch quá nhiều so với ảnh gốc.  
3. Đánh giá hệ thống sử dụng các video đầu vào khác nhau  
Mục đích của bài thực nghiệm này là để đánh giá việc nhận dạng ở các góc camera khác nhau nên nền cũng sẽ  
khác nhau và cũng có một vài đối tượng chuyển động khác không phải là phương tiện ô tô (người di chuyển trên vỉa  
hè) để đánh giá hiệu năng nhận dạng của hệ thống khách quan hơn.  
Bảng 2. Đánh giá hệ thống với hai video đầu vào khác nhau  
Tỷ lệ nhận  
đối tượng  
chính xác  
Frame per  
second (FPS) tượng thực tìm thấy  
Số đối  
Số blob  
Số đối tượng/blob  
nhận dạng đúng  
Tỷ lệ nhận  
blob chính xác  
Video đầu vào  
v200048.ts  
v200555.ts  
2.9  
3.1  
143  
47  
137  
44  
93  
38  
65,03 %  
80,85 %  
67,88 %  
86,36 %  
Kết quả cho thấy hệ thống nhận dạng vẫn làm việc tương đối hiệu quả với video đầu vào v200555.ts. Ta sẽ thấy  
có một lưu ý là số blob tìm thấy lại nhỏ hơn đối tượng thực, điều này có thể giải thích do một số đối tượng có thể  
không được nhận dạng thành blob hoặc các đối tượng bị chồng lấn vào nhau dẫn đến bị trích xuất thành một blob.  
IV. KẾT LUẬN  
Bài báo đã đạt được một số kết quả khả quan như: (1)Sử dụng các phương pháp nhận dạng như phân loại nối  
tầng, trừ nền kết hợp với dò blob. (2) Hiển thị số lượng xe ở mỗi khung hình với độ chính xác cao bằng cách sử dụng  
phương pháp loại trừ hình nền và trích xuất đối tượng. (3) Đưa ra bảng đánh giá sự ảnh hưởng khác nhau của các yếu  
tố như thuật toán xử lý, tham số cấu hình, dữ liệu đầu vào ở các góc nhìn khác nhau. Mặc dù có một số kết quả như  
trên, tuy nhiên về tốc độ xử lý khi dùng thuật toán PBAS để trừ nền cần phải được cải thiện. Vấn đề các đối tượng  
chồng lấp vẫn chưa được giải quyết.  
V. TÀI LIỆU THAM KHẢO  
Tiếng anh:  
[1] T. R. Currin. “Turning Movement Counts. In Introduction to Traffic Engineering: A Manualfor Data Collection  
and Analysis”. Stamford Wadsworth Group, pp. 1323, 2001 .  
[2] Subhashis Chaudhuri, Tom V. Mathew, Gopal R. Patil. “Real Time Traffic Counting System using video image  
processing”. National Conference on Urban Mobility - Challenges, Solutions, and Prospects - IIT Madras, 2012.  
[3] K. Vidhya, A. BazilaBanu. “Density Based Trafic Signal System”. International Journal of Innovative Research in  
Science, Engineering and Technology, 2014 International Conference on Innovations in Engineering and  
Technology (ICIET'14), 2014.  
[4] T. Bouwmans. Traditional and Recent Approaches in Background Modeling for Foreground Detection: An  
Overview. Science Direct journal on Computer Science Review, vol. 11 12, pp. 31-66, may 2014.  
[5] Marco Treiber. “An Introduction to Object Recognition – Selected Algorithms for a Wide Variety of  
Applications”. Siemens Electronics Assembly Systems GmbH & Co. KG Rupert-Mayer-Str. 44 81359 Munic,  
Germany, 2010.  
Đoàn Phước Miền, Tống Thị Kim Quy, Trần Thế Vũ, Huỳnh Hữu Hưng  
553  
[6] Birgi Tamersoy. “Background Subtraction”. The University of Texas at Austin, Septemper 2009.  
[7] Martin Hofmann, Philipp Tiefenbacher, Gerhard Rigoll. “The Pixel-Based Adaptive Segmenter”. Institute for  
Human-Machine Communication, 2009.  
[8] N. Chintalacheruvu, V. Muthukumar. “Video Based Vehicle Detection and Its Application in Intelligent  
Transportation Systems”. Journal of Transportation Technologies, Vol. 2, pp. 305-314, 2012.  
[9] P. G. Michalopoulos. “Vehicle Detection Video Through Image Processing: The Autoscope System”. IEEE  
Transactions on Vehicular Technology, Vol. 40, No. 1, 1991  
[10]Q. Cai, A. Mitiche, J. K. Aggarwal. “Tracking Human Motion in an Indoor Environment. International  
Conference on Image Processing, USA, Vol. 1, pp. 215-218, 1995  
[11]D. G. Lowe. “Distinctive Image Features from Scaled-Invariant Keypoints”. International Journal of Computer  
Vision, pp. 91-110, 2004  
[12]D. A. Forsyth, J. Ponce. “Computer Vision: A Modern Approach”. Prentice Hall, 2003  
[13]A. H. S. Lai, G. S. K. Fung, N. H. C. Yung. “Vehicle Type Classification from Visual-Based Dimension  
Estimation”. IEEE Intelligent Transportation Systems Conference, pp. 201-206, 2001  
Trang web:  
[14]Trang tui tr- y ban An toàn giao thông quc gia. Mỗi năm Việt Nam có 15.000 người chết vì tai nn giao  
[15]Wikipedia - The Free Encyclopedia. “Background Subtraction”. https://en.wikipedia.org/wiki/ Background_  
[16]GitHub. “Andrews Sobral – Simple Vehicle Counting”. https://github.com/andrewssobral/simple_vehicle_  
[17]Trang môi trường - Cổng thông tin điện tBGiao Thông Vn Tải, “Năm 2014: Tai nn giao thông gim cba  
tiêu chí”, http://www.mt.gov.vn/moitruong/quy-chuan-chat-luong/35178/nam-2014--tai-nan-giao-thong-giam-ca-  
3-tieu-chi.aspx.  
TOWARDS VEHICLE COUNTING USING IMAGE PROCESSING: A CASE STUDY IN  
DA NANG CITY  
Doan Phuoc Mien, Tong Thi Kim Quy, Tran The Vu, Huynh Huu Hung  
ABSTRACT: Traffic congestion is a major issue that needs to be addressed thoroughly for all major cities including Danang. In  
order to coordinate traffic flow, it is necessary first to know the average number of vehicles involved in the traffic in the city's main  
roads. In this paper we propose a methodology for vehicle counting. The paper focuses on vehicle detection based on the  
subtraction method associated with blob detection. Different methods are used to compare the results in the most objective way. The  
results are as follows: (1) Compare the performance of PBAS with two algorithms is Static Frame Difference and Frame Difference,  
(2) Evaluate the effect of parameters in the subtraction algorithm to the identification process, (3) Evaluate the system with different  
input videos.  
Keywords: subtraction method, detection Blob, Static Frame Difference, Frame Difference,Image processing.  
pdf 9 trang Thùy Anh 14200
Bạn đang xem tài liệu "Ứng dụng xử lý ảnh để đếm số lượng xe ô tô trong nội thành Đà Nẵng", để tải tài liệu gốc về máy hãy click vào nút Download ở trên

File đính kèm:

  • pdfung_dung_xu_ly_anh_de_dem_so_luong_xe_o_to_trong_noi_thanh_d.pdf