Chương 1: GIỚI THIỆU VỀ ĐỀ TÀI 1.Lý do chọn đề tài: Cùng với sự phát triển khoa học kỹ thuật, nhu cầu đi lại của con người ngày càng tăng, lưu lượng giao thông ngày càng lớn. Với số lượng phương tiện giao thông ngày càng lớn và còn không ngừng tăng thì việc quản lý các phương tiện giao thông gặp rất nhiều khó khăn do đó cần có một hệ thống tự động. Một trong những hệ thống đó là hệ thống nhận dạng biển số xe. Đó là một hệ thống có khả năng “đọc” và “hiểu”các biển số xe một cách tự động.
Trong luận văn này, người thực hiện đã xây dựng hệ thống để quản lý bãi giữ xe bởi vì các bãi giữ xe hiện nay còn có vấn đề bất cập như: ¾ Tốn nhiều nhân công. ¾ An toàn chưa cao, vẫn còn xảy ra hiện tượng mất xe. ¾ Vé xe bằng giấy, dễ bị mất hay nhàu nát.Nội dung đề tài: Cũng như mọi hệ thống khác, hệ thống này yêu cầu có phần cứng và phần mềm. Phần cứng có phần chính là WebCam để thu nhận hình ảnh và phần mềm sẽ phân tích hình ảnh đó để lấy ra các ký tự trên biển số xe.
Quá trình thu nhận biển số xe [5] được thực hiện theo sơ đồ sau: Phaân Taùch ñoaïn bieån soá kyù töï Nhaän daïng Keát quaû bieån soá xe: kyù töï 66K9 0434 Hình 1.1: Sơ đồ quá trình nhận dạng 3 ¾ Tách biển số: khối này có chức năng tách biển số từ ảnh chụp bằng các phương pháp xử lý ảnh. Kết quả của khối là ảnh màu RBG (Red Green Blue) được cắt ra từ ảnh chụp. Đây là một công việc rất khó khăn vì ta không biết được vị trí chính xác của biển số. Ngoài ra, còn phụ thuộc vào độ sáng của ảnh chụp.
¾ Phân đoạn ký tự: sau khi tách biển số, chúng ta bắt đầu phân đoạn ký tự. Khối này thực hiện tách từng kí tự có trong biển số, tạo thành tập ảnh riêng biệt các ký tự phục vụ việc nhận dạng ký tự. Ảnh của mỗi ký tự là ảnh trắng đen. ¾ Nhận dạng ký tự: sau khi phân đoạn, tách được các ký tự trong biển số và tạo thành một chuỗi ký tự.
Chuỗi này đưa vào khối nhận dạng dạng để tiến hành nhận dạng từng ký tự trong chuỗi.Giới hạn đề tài: Việc có nhiều biển số xe với định dạng và độ sáng khác nhau gây khó khăn cho việc nhận dạng. Do quá trình nhận dạng dựa vào phương pháp xử lý ảnh và trích xuất biển số từ ảnh chụp nên độ sáng khác nhau làm tăng độ phức tạp trong quá trình nhận dạng. Do thời gian thực hiện đề tài không cho phép nên người thực hiện giới hạn các biển số và điều kiện như sau: ¾ Biển số có chữ đen, nền trắng, có 2 hàng, số ký tự là 8. ¾ Biển số phải còn nguyên vẹn, không bị tróc sơn hay rỉ sét, không bị che khuất.
¾ Góc nghiêng của biển số không quá 450 so với phương ngang. ¾ Hình chụp biển số không bị mờ, ký tự biển số còn phân biệt, nhận dạng được bằng trực quan. ¾ Không bị nhiễu bởi ánh sáng làm ảnh chụp bị chói. Mục tiêu: Trong đề tài này, em đã đặt những mục tiêu sau: ¾ Hạn chế những vấn đề bất cập của bãi giữ xe hiện nay.
¾ Xây dựng một mô hình hệ thống quản lý bãi giữ xe tự động. Để đạt được những mục tiêu trên, em đã tiến hành các công việc như sau: ¾ Tìm hiểu về quá trình xử lý và nhận dạng ảnh ¾ Tìm hiểu các hệ thống bãi giữ xe đã được áp dụng ở Việt Nam 5 Chương 2: CHỤP ẢNH BẰNG WEBCAM Đây là khâu quan trọng nhất của hệ thống bởi vì nếu ảnh chụp bị mờ hay nhiễu thì khi đưa vào nhận dạng sẽ không được. Để chụp ảnh thì ta có thể sử dụng camera hoặc WebCam. Khi lựa chọn thiết bị thì ta cần quan tâm tới các thông số quyết định tới chất lượng ảnh như: ¾ Độ phân giải ( resolution) Độ phân giải càng lớn thì chất lượng hình ảnh càng nét.
Thường thì trong các ứng dụng không cần thiết phải quan sát thật rõ nét thì độ phân giải 420 TV Lines là hoàn toàn có thể chấp nhận được. ¾ Số điểm ảnh ( CCD Total Pixels ) Thông số này nói lên chất lượng hình ảnh, số điểm ảnh càng lớn thì chất lưọng hình ảnh càng tốt, tuy nhiên, chất lượng hình ảnh càng tốt thì cũng đồng nghĩa với dung lưọng ảnh càng lớn, và sẽ tốn bộ nhớ lưu trữ cũng như ảnh hưỏng đến tốc độ đường truyền. ¾ Điều kiện hoạt động của thiết bị: Cường độ ánh sáng nhỏ nhất ( Minimum Illumination ):Thường được tính bằng Lux. Thông số này nói lên rằng, WebCam(Camera) chỉ có thể hoạt động ở cường độ ánh sáng lớn hơn cường độ ánh sáng nhỏ nhất.
Trong điều kiện quá tối, nếu không phải là Camera có chức năng hồng ngoại thì sẽ không hoạt động được. o Ánh nắng mặt trời: 4000 lux, có mây: 1000lux o Ánh sáng đèn tuýp: 500 lux, có mây: 300lux o Ánh sáng đèn tuýp đỏ 500 lux, trắng (300 lux) trắng sáng 1lux o Đêm không trăng: 0.0001 Lux Xin chú ý đến loại Camera quan sát có chức năng Auto Iris (Tự động hiệu chỉnh ánh sáng). Đặc điểm của Camera loại này là chỉ với 1 nguồn sáng nhỏ, nó có thể tự động khuyếch đại nguồn sáng đó lên để có thể quan sát được. 6 Nguồn cung cấp ( Power Supply ): Hiện nay đa số các WebCam đều sử dụng nguồn máy tính(Laptop),Camera quan sát đều dùng loại nguồn 12VDC, chỉ một số ít các Camera dùng nguồn khác.
Tuy nhiên, bạn không phải lo lắng đến vấn đề nguồn 12VDC, vì phần lớn các công ty bán camera quan sát đều bán bộ chuyển đổi nguồn, do đó bạn có thể sử dụng trực tiếp nguồn 220VAC. o Operatinon Temperature: Dải nhiệt độ hoạt động. o Phần lớn các Camera quan sát đều cho phép hoạt động trong dải nhiệt độ -100C ~ 500C, nếu Camera của bạn được sử dụng trong những điều kiện khắc nghiệt như trong công nghiệp, khu vực có nhiệt độ cao thì bạn nên sử dụng các loại Camera quan sát chuyên dụng trong công nghiệp. o Operational Humidity: Độ ẩm cho phép.
o Thông thường, độ ẩm cho phép là 90% RH (độ ảm tương đối) Vì mục tiêu của đề tài chỉ là xây dựng một mô hình về hệ thống giữ xe nên khi thực hiện đề tài, người thực hiện đã chọn WebCam làm thiết bị chụp ảnh Hình 1.1: Ảnh chụp bằng Webcam 7 Chương 3: TÁCH BIỂN SỐ 3.Tổng quan về tách biển số: Tách biển số là một bước rất quan trọng trong quá trình nhận dạng biển số xe. Khối tách biển số xe được chia làm 2 giai đoạn chính: ¾ Giai đoạn 1: định vị trí của biển số trong ảnh chụp từ webcam. ¾ Giai đoạn 2: dùng các giải thuật để cắt biển số xe ra khỏi ảnh chụp và xoay biển số xe về phương ngang.1: Sơ đồ tổng quát của khối tách biển số Việc định vị biển số xe dựa vào các tính chất của biển số như: hình dạng, màu sắc của biển số so với nền. Biển số xe có hình chữ nhật với kích thước chiều dài và rộng không thay đổi.
Từ đó chúng ta có thể tìm các vùng có hình tứ giác trong hình, tính tỉ lệ giữa hai chiều của hình so với khoảng giá trị cho trước để xem thử vùng đó có chứa biển số hay không. Ngoài ra, định vị biển số còn dựa trên màu sắc của biển số. Hầu hết các biển số xe Việt Nam đều nền trắng, chữ đen. Kết hợp hai tính chất trên, chúng ta xác định được vùng chứa biển số.
Sau khi định vị biển số xe, chúng ta tiến hành cắt biển số xe. Biển số xe được cắt theo 2 bước. Bước đầu tiên là cắt vùng rộng hơn vùng chứa biển số. Sau đó tìm góc nghiêng của biển số và thực hiện xoay biển số về phương thẳng đứng.
Bước hai là cắt biển số ra khỏi vùng trên. Thực hiện việc cắt biển số qua hai bước như trên làm tăng độ chính xác, biển số được cắt nguyên vẹn, không cắt phạm chữ, trừ trường hợp ảnh bị chói, độ tương phản không đều hoặc bị che khuất thì kết quả của việc tách biển số mới không chính xác. Phần tách biển số sử dụng rất nhiều giải thuật và phương pháp xử lý đối với ảnh số như sơ đồ sau đây: 8 Hình 3.2: Sơ đồ chi tiết của khối tách biển số 3. Tìm vùng màu trắng: Vì biển số màu trắng nên người thực hiện sẽ nhị phân hóa ảnh bằng cách gắn giá trị cho các pixel trắng là 1, còn ngược lại là 0.
Đầu tiên, chúng ta sẽ biến đổi ảnh gốc thành ảnh xám (có mức sáng từ 0 đến 255), sau đó nhị phân hóa với một ngưỡng thích hợp. Nếu ảnh được chụp vào ban đêm hay ban ngày nhưng ít ánh sáng thì mức ngưỡng sẽ là 120. Còn ban ngày, nhiều ánh sáng là 190. Vấn đề ở đây là làm sao chúng ta nhận biết được đó là ảnh sáng hay ảnh tối? Người thực hiện đã dựa vào lược đồ mức xám ( histogram – tần số xuất hiện của mức xám ) của ảnh [8].
Nếu tần số xuất hiện các pixel có giá trị <64 thì đó là ảnh tối, ngược lại là ảnh sáng. 9 Ví dụ cho hai ảnh gốc có biển số như sau: Hình 3.3: Ảnh tối và ảnh sáng Ảnh sau khi nhị phân hóa sẽ như sau: Hình 3.4: Ảnh sau khi nhị phân Đây là sơ đồ thuật giải của bước tìm và tách vùng màu trắng: 10 Hình 3.5: Sơ đồ thuật giải tìm và tách vùng màu trắng 3.Xác định vùng chứa biển số: Ảnh nhận được sau khi nhị phân hóa sẽ có nhiều vùng màu trắng, và biển số sẽ nằm trong vùng màu trắng thỏa điều kiện: ¾ 0.75 < chiều cao / chiều ngang < 0.91 ¾ 16000 ≤ S_pixel_trắng ≤ 61000 ¾ ≤ S_pixel_trắng / S_biển số ≤ 0.7 Với: Chiều cao là H { H = start(i).Area } Diện tích biển số là S_biển số { S_biển số = W × H } 11 Tỉ số 2 kích thước của biển số là 0.75 nhưng khi bị nghiêng thì là 0.6: Hình dạng biển số khi bị nghiêng Sau điều kiện thứ nhất, sẽ có những vùng trắng không chứa biển số nhưng có tỉ số giữa chiều cao và chiều ngang phù hợp thì vẫn được chọn. Ta sẽ loại bỏ những vùng này bằng điều kiện thứ hai – diện tích vùng trắng. Vì khoảng cách từ webcam tới xe cố định (ta lấy trước khoảng cách chụp ) nên số lượng pixel trắng chứa trong biển số cố định.
Đối với điều kiện thứ ba, nếu biển số nằm ngay ngắn thì tỉ số là 0.