Cùng với sự phát triển của khoa học kỹ thuật và nhu cầu đi lại ngày càng tăng số lựợng phương tiện giao thông trên đường ngày càng xuất hiện nhiều.Với số lượng phương tiện giao thông lớn và còn không ngừng tăng lên. Vấn đề này đã làm nảy sinh nhiều vấn đề trong việc kiểm soát cũng như quản lý các phương tiện. Để giải quyết vấn đề này nhu cầu đặt ra là áp dụng các hệ thống tự động. Một trong những hệ thống đươc đề cập trên là hệ thống “ Nhận dạng biển số xe ”.Đây là là hệ thống có khả năng thu nhận hình ảnh cũng như là “đọc” và “hiểu” các biển số xe một cách tự động. Hệ thống này có thể được ứng dụng rộng rãi như: trạm cân và rửa xe tự động hoàn toàn, bãi giữ xe tự động, kiểm soát lưu lượng giao thông hay trong các ứng dụng về an ninh.Cũng như mọi hệ thống tự động khác, hệ thống “ Nhận dạng biển số xe” cũng sẽ yêu cầu có cả phần cứng lẫn phần mềm. Phần cứng của nó có phần chính sẽ là một camera có tác dụng thu nhận hình ảnh còn phần mềm sẽ có tác dụng xử lý hình ảnh đó.Với sự phát triển của kỹ thuật điện tử, các camera sẽ dễ dàng có khả năng thu nhận được hình ảnh do đó mà vấn đề đặt ra và luôn là vấn đề quan trọng nhất trong hệ thống, quyết định tính hiệu quả của hệ thống xử lý ảnh bởi phần mềm Matlab.Với vai trò đã phân tích ở trên. Tập đồ án này chủ yếu tập trung vào giải quyết các vấn đề đặt ra khi xử lý ảnh để được ra chính xác biển số đăng ký xe.
Trang 1BỘ CÔNG THƯƠNG TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP TP HỒ CHÍ MINH
KHOA CÔNG NGHỆ ĐIỆN TỬ
ĐỒ ÁN 2
ĐỀ TÀI:
NHẬN DẠNG BIỂN SỐ XE BẰNG PHẦN MỀM MATLAB
GVHD : ThS NGUYỄN TIẾN TÙNG
SVTH : TRẦN CAO MINH_10320281 NGUYỄN HOÀNG NHẠC_
LỚP : DHDT6BLT
TP Hồ Chí Minh, tháng 11 năm 2011
Trang 2Cảm ơn tất cả bạn bè, những người đã đóng góp ý kiến và luôn động viên khuyến khíchgiúp đỡ nhóm hoàn thành đồ án này.
Xin Chân thành cảm ơn !
Nhóm sinh viên thực hiện!
Trần Cao Minh Nguyễn Hoàng Nhạc
Trang 3
TP Hồ Chí Minh, ngày tháng năm 2011
PHIẾU NHẬN XÉT ĐỒ ÁN
(Dành cho giáo viên h ướng dẫn)
A Phần ghi của sinh viên
1 Họ và tên sinh viên : ………MSSV :
Họ và tên sinh viên : ………MSSV :
Lớp ………Điện thoại liên lạc: ………
2 Đề tài :
3 Họ tên giáo viên hướng dẫn:
4 Tổng quát về thuyết minh bản báo cáo: Số trang: Số chương :
Số bảng số liệu : Số hình vẽ:
Số tài liệu tham khảo: Phần mềm tính toán:
Hiện vật (sản phẩm) :
B Phần ghi của giáo viên hướng dẫn 5 Phần nhận xét (nếu có)
6 Kết luận và đề nghị :
Được bảo vệ Không được bảo vệ 7 Đánh giá chung : Sinh viên Điểm : / 10
Sinh viên Điểm : / 10
Ký tên (ghi rõ họ tên)
TRƯỜNG ĐẠI HỌC CÔNG NGHIỆP TP.HCM
KHOA CÔNG NGHỆ ĐIỆN TỬ
BỘ MÔN ĐIỆN TỬ VIỄN THÔNG
CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM
Độc Lập – Tự Do – Hạnh Phúc
Trang 4NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
………
Ngày tháng năm 2011
Ký tên
Trang 5MỤC LỤC
CHƯƠNG 1: TỔNG QUAN VỀ NHẬN DẠNG ẢNH 1
1.1GIỚI THIỆU CHƯƠNG TRÌNH NHẬN DẠNG BIỂN SỐ XE 5
1.2.1 Giới thiệu 5
1.2.2 Nội dung đồ án 5
1.2 TỔNG QUAN VỀ XỬ LÝ VÀ NHẬN DẠNG ẢNH 1
1.1.1 Khái niệm 1
1.1.2 Các phuơng pháp nhận dạng truyền thống 3
1.1.3 Các hạn chế của phuơng pháp nhận dạng truyền thống 4
CHƯƠNG 2: LÝ THUYẾT ẢNH SỐ VÀ XỬ LÝ ẢNH SỐ 9
2.1 2.1 LÝ THUYẾT VỀ ẢNH SỐ 9
2.1.1 Khái niệm ảnh số 9
2.1.2 Phần tử ảnh (pixel) 10
2.1.3 Cấu trúc một file ảnh 10
2.1.4 Mức xám (Gray level) 11
2.1.5 Ảnh chỉ số 12
2.1.6 Ảnh biểu diễn theo độ sáng 12
2.1.7 Ảnh trắng đen 12
2.1.8 Ảnh RGB 13
2.1.9 Dãy ảnh đa khung 15
2.2 2.2 CÁC KỶ THUẬT XỬ LÝ ẢNH SỐ 16
2.2.1 Mục đích của việc xử lý ảnh số 16
2.2.2 Kỷ thuật nâng cao chất lượng ảnh 16
2.2.3 Kỷ thuật biến đổi ảnh 16
2.2.4 Kỷ thuật phân tích ảnh 16
2.2.5 Kỷ thuật nhận dạng ảnh 17
2.3 2.3 CÁC PHƯƠNG PHÁP XỬ LÝ ẢNH SỐ 17
2.3.1 Chuyển ảnh màu RGB thành ảnh mức xám 17
2.3.2 Phương pháp lọc nhiễu ảnh 17
2.3.2.1 Lọc tuyến tính 18
2.3.2.2 Lọc phi tuyến 18
2.3.2.3 Lọc trung vị 18
2.3.3 Phân vùng ảnh 21
2.3.3.1 Phương pháp phân vùng ảnh 21
2.3.3.2 Khái niệm biên 21
2.3.3.3 Thuật toán dò biên tổng quát 22
2.3.3.4 Phát hiện biên 23
2.3.3.5 Biến đổi Randon 24
CHƯƠNG 3: CHƯƠNG TRÌNH NHẬN DẠNG BIỂN SỐ XE 29
3.1 KHÁI QUÁT CHƯƠNG TRÌNH 29
3.2 TRÍCH VÙNG BIỂN SỐ XE 30
3.2.1 Xác định ngưỡng xám 30
3.2.2 Chương trình tìm góc nghiêng 31
3.3 CÁCH LY CÁC KÝ TỰ TRONG BIỂN SỐ 32
3.3.1 Chia biển số thành hai hàng 32
3.3.2 Cắt các ký tự trong 2 hàng 34
3.4 CHƯƠNG TRÌNH NHẬN DẠNG BIỂN SỐ 35
Trang 63.4.1 Tạo các mẫu 35
3.2.2 Tiến hành nhận dạng các ký tự 35
CHƯƠNG 4: KẾT QUẢ MÔ PHỎNG 38
4.1 GIAO DIỆN CHƯƠNG TRÌNH 38
4.1.1 Giao diện chính 38
4.4.2 Giao diện nhận dạng 39
4.1.3 Kết quả nhận dạng 40
4.2 QUY TRÌNH NHẬN DẠNG 41
Kết luận và hướng phát triển đề tài 42
Phụ lục 44 Tài liệu tham khảo
Trang 7LỜI MỞ ĐẦU
Cùng với sự phát triển của khoa học kỹ thuật và nhu cầu đi lại ngày càng tăng sốlựợng phương tiện giao thông trên đường ngày càng xuất hiện nhiều.Với số lượngphương tiện giao thông lớn và còn không ngừng tăng lên
Vấn đề này đã làm nảy sinh nhiều vấn đề trong việc kiểm soát cũng như quản lý cácphương tiện Để giải quyết vấn đề này nhu cầu đặt ra là áp dụng các hệ thống tự động.Một trong những hệ thống đươc đề cập trên là hệ thống “ Nhận dạng biển số xe ”
Đây là là hệ thống có khả năng thu nhận hình ảnh cũng như là “đọc” và “hiểu” cácbiển số xe một cách tự động Hệ thống này có thể được ứng dụng rộng rãi như: trạm cân
và rửa xe tự động hoàn toàn, bãi giữ xe tự động, kiểm soát lưu lượng giao thông haytrong các ứng dụng về an ninh
Cũng như mọi hệ thống tự động khác, hệ thống “ Nhận dạng biển số xe” cũng sẽ yêucầu có cả phần cứng lẫn phần mềm Phần cứng của nó có phần chính sẽ là một camera cótác dụng thu nhận hình ảnh còn phần mềm sẽ có tác dụng xử lý hình ảnh đó
Với sự phát triển của kỹ thuật điện tử, các camera sẽ dễ dàng có khả năng thu nhậnđược hình ảnh do đó mà vấn đề đặt ra và luôn là vấn đề quan trọng nhất trong hệ thống,quyết định tính hiệu quả của hệ thống xử lý ảnh bởi phần mềm Matlab
Với vai trò đã phân tích ở trên Tập đồ án này chủ yếu tập trung vào giải quyết cácvấn đề đặt ra khi xử lý ảnh để được ra chính xác biển số đăng ký xe
Trang 8Xử lý ảnh là quá trình bao gồm nhiều công đoạn như: thu nhận ảnh, tăng cườngảnh, khôi phục ảnh, biến đổi ảnh, phân tích ảnh Các quá trình này đều phải ápdụng nhiều thuật toán khác nhau, cũng như phương pháp sử dụng rất đa dạng.Nhận dạng là quá trình phân loại các đối tượng được biểu diễn theo một môhình nào đó và gán cho chúng vào một lớp (gán cho đối tượng một tên gọi) dựatheo những quy luật và các mẫu chuẩn
Quá trình xử lý và nhận dạng ảnh tùy theo nhu cầu ứng dụng thực tế mà sửdụng thuật toán và phương pháp khác nhau Tuy nhiên theo trình tự nhất địnhthực hiện các bước sau đây:
Hình 1.1: Sơ đồ nhận dạng ảnh tổng quát
Thu nhận ảnh: thu nhận ảnh qua camera, cũng có thể bộ cảm biến, ảnh
chụp được đưa vào máy tính làm cơ sở dữ liệu Ảnh thu được là tín hiệu
Trang 9tương tự.
Mã hóa: là quá trình biến đổi tín hiệu tương tự sang tín hiệu rời rạc và số
hóa bằng lượng tử hóa trước khi chuyển sang giai đoạn xử lý
Phân tích ảnh: bao gồm nhiều công đoạn nhỏ:
Trước hết nâng cao chất lượng ảnh, do chất lượng ảnh thu được không đạtyêu cầu với nhiều nguyên nhân khác nhau ( chất lượng thiết bị thu ảnh,nguồn sáng, nhiễu,…)
Sau đó khôi phục ảnh để làm nổi bật một số đặc tính chính của ảnh, haylàm cho ảnh giống nhất với trạng thái gốc ( trạng thái trước khi ảnh bị biếndạng )
Kế tiếp là phát hiện các đặc tính như: biên, phân vùng ảnh, trích chọn cácđặc tính,
Bốn cách tiếp cận khác nhau trong lý thuyết nhận dạng là:
1.Đối sánh mẫu dựa trên các đặc trưng được trích chọn.
2 Phân loại thống kê
3 Đối sánh cấu trúc
4 Phân loại dựa trên mạng nơ-ron nhân tạo
Trong các ứng dụng rõ ràng là không thể chỉ dùng có một cách tiếp cận đơn lẻ
để phân loại “tối ưu” do vậy cần sử dụng cùng một lúc nhiều phương pháp và cáchtiếp cận khác nhau Do vậy, các phương thức phân loại tổ hợp hay được sử dụngkhi nhận dạng và nay đã có những kết quả có triển vọng dựa trên thiết kế các hệthống lai (hybrid system) bao gồm nhiều mô hình kết hợp
Việc giải quyết bài toán nhận dạng trong những ứng dụng mới, nảy sinh trongcuộc sống không chỉ tạo ra những thách thức về thuật giải, mà còn đặt ra nhữngyêu cầu về tốc độ tính toán Đặc điểm chung của tất cả những ứng dụng đó lànhững đặc điểm đặc trưng cần thiết thường là nhiều, không thể do chuyên gia đềxuất, mà phải được trích chọn dựa trên các thủ tục phân tích dữ liệu
1.1.2 Các phuơng pháp nhận dạng truyền thống.
Hệ nhận dạng kí tự ( gọi tắt là OCR - Optical Character Recognition ) Nhiều
Trang 10hệ thống nhận dạng đã làm việc khá tốt với các trang văn bản rõ nét, nhưng xéttổng thể thì vẫn còn khoảng cách khá lớn giữa tính năng của các hệ nhận dạng vàđòi hỏi thực tế.
Đa số các hệ OCR làm việc với hình ảnh nhị phân (Bitmap) của các trang vănbản đã được Scanner hoặc nhận từ máy Fax Công việc đầu tiên của quy trìnhnhận dạng là phân thành các khối văn bản dựa trên đặc thù trang in như lề phải, lềtrái Từng khối văn bản sau đó được phân thành những ô mực nhỏ ( tương ứng vớicác chữ cái ) Chương trình nhận dạng sẽ tính xem từng ô mực tương ứng với chữcái nào và xác định nội dung trang văn bản đó
Sự khác biệt giữa hình ảnh và văn bản cũng là một vấn đề được các hệ OCRlưu ý Đa số các hệ nhận dạng dùng các tham số thống kê để phân biệt chữ và hìnhảnh ( đối với văn bản, màu trắng và đen phân bố với nhịp điệu chuẩn, còn tronghình ảnh thì các pattern đen trắng phân bố không đều ) Thuật toán đơn giản nhất
là lấy phần trăm các điểm đen/trắng làm chỉ tiêu phân biệt, nhưng khi đó chữ quáđậm có thể bị xem là hình ảnh
Có nhiều phương pháp nhận dạng, nhưng nói chung được quy về 2 kiểu: nhậndạng theo mẫu ( template-base ) và nhận dạng theo tính chất ( feature - base)
Phương pháp nhận dạng theo mẫu là so sánh với các mẫu chữ lưu sẵn
Nhận dạng theo tính chất thì quy ô mực thành các tính chất quy định cáchthức viết nên con chữ
Phương pháp nhận dạng theo mẫu thuộc loại cổ điển quy mỗi ô mực thành một
ma trận điểm 10 x 10 Các con chữ có thể có kích cỡ khác nhau nhưng đều quythành ma trận 10 x 10 và so sánh với mẫu để chọn mẫu gần nhất Có nhiều cáchthức so sánh, chẳng hạn thông qua số lượng điểm khác biệt Tuy nhiên do sự khácbiệt giữa các font chữ nhiều khi còn lớn hơn sự khác biệt giữa các con chữ cùngfont ( chẳng hạn chữ b và chữ h - 2 chữ này trong cùng một font còn có vẻ gầnnhau hơn so với cùng chữ trong font ), vì vậy thông thường các mẫu được phântheo font Sau khi xử lý một vài từ, hệ thống tự động xác định các con chữ haydùng và định font cho thích hợp
Trang 11Nhận dạng theo tính chất, trong hệ có 100 “ hệ chuyên gia” khác nhau, thựcchất là các thuật toán nhận dạng 100 con chữ ( từ A Z, a z, số, các dấu ) Cáccon chữ được nhận dạng theo các tính chất như gạch nghiêng, đứng, nghiêng,điểm uốn, phản xạ, chiều dài và hướng các dấu gạch Hệ chuyên gia còn xem xéthình chiếu dọc, ngang ( cộng với các điểm đen theo hàng/cột ) để xác định thêmcác tham số khác Kiểu nhận dạng này dựa trên tư duy quen thuộc sau: chẳng hạnchữ t gồm một đường thẳng đứng cắt một vạch ngang, có thể có thêm các gạchchân Nếu nhận dạng theo mẫu phải lưu tất cả các mẫu khác nhau ( hệExperVision chứa tới 2100 loại chữ ) Hệ OmniPage sẽ chỉ cho máy tính cách
“đọc” từng con chữ, ví dụ chữ k gồm một vạch đứng và hai vạch chéo, còn cáctham số khác chỉ là tham số phụ
1.1.3 Các hạn chế của phương pháp truyền thống
Thực tế các trang văn bản không thể đạt được mức độ sạch sẽ, chuẩn mực Cònnhiễu khuyết điểm hiện tại là một vấn đề lớn đối với các hệ OCR, bởi vì chỉ cầnmột vài chấm mực nhỏ chữ cũng có thể làm nhận dạng sai, ví dụ chữ C có thể biếnthành chữ O, hay tài liệu photocopy thì các nét mảnh có thể bị đứt đoạn thì có thểtrở thành một chữ cái riêng
Các kiểu chữ mang tính nghệ thuật ngày càng nhiều, và ngay cả các loại chữchuẩn cũng không hoàn toàn đồng nhất ngay cả khi trùng tên, chẳng hạn font chữTimes của máy in Hewlett-Packard DeskJet khác font cùng tên trên máy in AppleLaser Writer
Với kiểu nhận dạng này, nhiễu có thể gây ra các lỗi khác nhau, bởi vì bỏ đi mộtvài điểm không ảnh hưởng nhiều đến việc nhận dạng theo mẫu nhưng có thể phâncắt các đường thẳng hoặc đường cong và dẫn đến kết quả sai
Các thuật toán nhận dạng phải đủ mềm dẻo để xử lý khía cạnh tế nhị này Nếukhông đủ mềm dẻo thì một khác biệt rất bé của kiểu chữ cũng đòi hỏi quản lý và
xử lý riêng, ngược lại, quá mềm dẻo thì lỗi có thể rất nhiều, chẳng hạn chữ b vàchữ h khác nhau không nhiều có thể bị đồng nhất làm một
1.2 GIỚI THIỆU CHƯƠNG TRÌNH NHẬN DẠNG BIỂN SỐ XE
Trang 121.2.1 Giới thiệu
Với số lượng phương tiện giao thông lớn và còn không ngừng tăng lên nhưhiện nay đã làm nảy sinh nhiều vấn đề trong việc kiểm soát cũng như quản lý cácphương tiện Để giải quyết vấn đề này nhu cầu đặt ra là áp dụng các hệ thống tựđộng Một trong những hệ thống như vậy là hệ thống tự động nhận dạng biển số xe
là hệ thống có khả năng thu nhận ảnh cũng như là “đọc” và “hiểu” các biển số xemột cách tự động
Một hệ thống như vậy có thể được sử dụng trong rất nhiều các ứng dụng chẳnghạn như: trạm cân và rửa xe tự động hoàn toàn, bãi giữ xe tự động, kiểm soát lưulượng giao thông hay trong các ứng dụng về an ninh như tìm kiếm xe mất cắp Như mọi hệ thống tự động khác, hệ thống như vậy cũng sẽ yêu cầu có cả phầncứng lẫn phần mềm Phần cứng của nó có phần chính sẽ là một camera có tácdụng thu nhận hình ảnh còn phần mềm sẽ có tác dụng xử lý hình ảnh đó Với sựphát triển của kỹ thuật điện tử, các camera sẽ dễ dàng có khả năng thu nhận đượchình ảnh do đó mà vấn đề đặt ra và luôn là vấn đề quan trọng nhất trong hệ thống,quyết định tính hiệu quả của hệ thống xử lý ảnh như vậy sẽ là phần mềm xử lýảnh Với vai trò như đã phân tích ở trên nghiên cứu này tập trung vào giải quyếtcác vấn đề đặt ra khi xử lý ảnh để đưa ra chính xác biển số đăng ký xe
1.2.2 Nội dung đồ án
Cũng như mọi hệ thống tự động khác bao gồm phần cứng và phần mềm Phầncứng hệ thống này chính là Camera hay Webcam có tác dụng thu nhận chụp hìnhảnh biển số xe, hay l những ảnh chụp từ máy ảnh đây là dữ liệu đầu vào Phầnmềm Matlab sẽ xử lý và nhận dạng ảnh, sau đó đưa ra chính xác biển số xe Có thểtóm tắt yêu cầu đưa ra theo sơ đồ sau:
Trang 13Hình 1.2: Sơ đồ nhận dạng biển số xe
Từ lưu đồ trên ta thấy hệ thống nhận dạng biển số xe này có thể chia thành
ba giai đoạn chính: trích biển số, tách ký tự và nhận dạng các ký tự như sau:
Bắt hình từ camera: là quá trình capture từng khung hình trong video
stream liên tục từ camera Quá trình bắt hình được thực hiện tự động liêntục, theo chu kì, hay tùy vào sự quyết định của các điều kiện khác
Tiền xử lý ảnh: Tại đây các phép tiền xử lý ảnh như: chuyển đổi không gian
màu, khử nhiễu, cân bằng sáng được tiến hành nhằm chuẩn bị dữ liệu tốt,phù hợp tùy theo yêu cầu của các thuật toán xử lý ở mức cao hơn
Xử lý trích xuất vùng biển số xe: trong bước thu nhận ảnh từ camera
(webcam) hay những ảnh chụp từ máy chụp ảnh sau khi đưa vào máy tínhlàm cơ sở dữ liệu, ta dựa vào một số đặc điểm cơ bản của biển số xe so vớicác vật thể khác trong ảnh, áp dụng các thuật toán trích ra được vùng ảnh
nhỏ nhất chứa biển số Công đoạn này thực hiện dựa vào phương pháp hình
thái học: dựa vào đặc trưng hình thái của biển số xe như màu sắc, độ sáng,
sự đối xứng để xác định và trích ra ảnh biển số Phần này xác định bằng cácthuật toán chính: xác định ngưỡng xám, phát hiện biên, phân vùng ảnh
Cô lập các ký tự trong biển số xe: tách thành 8 hoặc 9 ký tự trong biển số
Trang 14xe, công đoạn này cũng thực hiện giống như trích biển số.
Nhận diện các ký tự: nhận dạng các ký tự từ các ký tự đã được tách ra
Ảnh là tập hợp các điểm (phần tử ảnh) khi được số hóa Khối lượng thông tintrong một ảnh là rất lớn (đến vài trăm mêga bít /ảnh) Bản chất các thông số ảnh cótính vector
MATLAB là một công cụ tính toán được xây dựng trên cơ sở các phép xử lý
ma trận Đây lại là đối tượng rất thích hợp cho việc biểu diễn các hình ảnh, trong
đó, mỗi phần tử của ma trận biểu diễn dữ liệu màu hoặc mức xám của một điểmảnh Trong MATLAB, mỗi hình ảnh thường được biểu diễn bằng một ma trận haichiều Mỗi phần tử của ma trận tương ứng với 1 pixel (một phần tử ảnh – pictureelement – biểu diễn bằng 1 điểm trên màn hình) Điểm ảnh ở góc trên bên trái làứng với hàng 1, cột 1 Một số hình ảnh được biểu diễn bằng một ma trận ba chiều,
ví dụ ảnh RGB, trong đó chiều thứ ba có kích thước bằng 3, nghĩa là ma trận này
có thể chia làm 3 ma trận hai chiều, ma trận thứ nhất ứng với độ sáng màu đỏ (R –Red) của điểm ảnh, ma trân thứ hai ứng với độ sáng màu xanh dương (B – Bue)
và ma trận thứ ba ứng với độ sáng màu lục (G – Green)
MATLAB lưu giữ các hình ảnh dưới một trong các kiểu dữ liệu sau: logical,uint8, uint16, double Người sử dụng có thể sử dụng các phép toán và các thao tác
cơ bản trên ma trận, chẳng hạn như truy xuất các phần tử, thay đổi kích thước, sắp
Trang 15xếp, cắt bỏ một phần ma trận để tác động lên các dữ liệu hình ảnh với điều kiệncác thao tác này chấp nhận các kiểu dữ liệu hình ảnh nói trên.
Riêng với các dữ liệu uint8 và uint16, ta không thể sử dụng các phép toán sốhọc như cộng, trừ, nhân, chia Trong trường hợp này, MATLAB cung cấp thêmcác hàm thực hiện các phép toán này
2.1.2 Phần tử ảnh (pixel)
Mỗi phần tử ảnh gọi là một pixel thể hiện cường độ sáng hay mức xám trongảnh Pixel là phần tử nhỏ nhất của ảnh, thường được biểu diễn bởi mảng hai chiềuf(x,y) Một ảnh bao gồm xy điểm Cặp tọa độ x, y tạo nên độ phân giải của ảnh
2.1.3 Cấu trúc một file ảnh
Một file ảnh là tập hợp nhiều điểm ảnh được minh họa hình 2.1
Hình 2.1: Mảng hai chiều của một file ảnhVậy ảnh được xem như một ma trận tọa độ ảnh Do đó hàm f(x,y) còn có thểbiểu diễn dưới dạng ma trận như sau:
Trang 16Hình 2.2: Minh họa mức xám sau khi mã hóa
2.1.5 Ảnh chỉ số
Với cách biểu diển ảnh này, mỗi ảnh sẽ được biểu diễn bởi 2 ma trận, một matrận dữ liệu ảnh X và một ma trận màu (còn gọi là bản đồ màu) map Ma trận dữliệu có thể thuộc kiểu uint8, uint16, hoặc double Ma trận màu là một ma trận kíchthước m x 3 gồm các phần tử kiểu double có giá trị trong khoảng [0,1] Mỗi hàng
Trang 17của ma trận xác định các thành phần red, green, blue của một màu trong tổng số mmàu được sử dụng trong ảnh Giá trị của một phần tử trong ma trận dữ liệu chobiết màu của điểm ảnh đó là màu nằm ở hàng nào trong ma trận màu Nếu ma trận
dữ liệu thuộc kiểu double, giá trị 1 sẽ tương ứng với hàng thứ 1 trong bảng màu,giá trị thứ 2 tương ứng với màu ở hàng thứ 2, Nếu ma trận dữ liệu thuộc kiểuhoặc uint16, giá trị 0 ứng với hàng 1, giá trị 1 tương ứng với hàng 2, Riêng vớikiểu uint16, MATLAB không hổ trợ đủ các phép toán so với kiểu uint8 nên khicần xử lý ta cần chuyển sang kiểu dữ liệu uint8 hoặc double bằng các hàmimapprox hoặc im2double
2.1.6 Ảnh biểu diễn theo độ sáng
Mỗi ảnh được biểu diễn bởi một ma trận hai chiều, trong đó giá trị của mỗiphần tử cho biết độ sáng (hay mức xám) của điểm ảnh đó Ma trận này có thểthuộc một trong các kiểu uint8, uint16, hoặc double Trong đó, giá trị nhỏ nhất (0)ứng với màu đen còn giá trị lớn nhất (255 hoặc 65535 hoặc 1 tùy kiểu dữ liệu làuint8, uint16, hay double) ứng với màu trắng Như vậy, ảnh biểu diễn theo kiểunày còn gọi là ảnh “trắng đen” hoặc ảnh gray scale
2.1.7 Ảnh trắng đen hay ảnh nhị phân
Ảnh trắng đen sau khi mã hóa tạo thành ma trận chỉ nhận giá trị logic (0,1),tương ứng 0 (trắng) và 1 (đen)
Hình 2.3: Minh họa ảnh nhị phân sau khi mã hóa 2.1.8 Ảnh RGB
Trang 18Ảnh RGB còn gọi là ảnh “truecolor” do tính trung thực của nó Ảnh này đượcbiểu diễn bởi một ma trận ba chiều kích thước m x n x 3, với m x n là kích thướcảnh theo pixels Ma trận này định nghĩa các thành phần màu red, green, blue chomỗi điểm ảnh, các thành phần của nó có thể thuộc kiểu uint8, uint16, hoặc double.
Ví dụ, điểm ảnh ở vị trí (10,5,1), (10,5,2), (10,5,3) Các file ảnh hiện nay thường
sử dụng 8 bit cho một thành phần màu, nghĩa là mất 24 bit cho mỗi điểm ảnh(khoảng 16 triệu màu)
Theo lý thuyết màu do Thomas đưa ra mọi màu đều có thể tổ hợp từ 3 màu cơbản sau:
Trang 19Ảnh màu được tạo thành từ 3 mức xám Red, Green, Blue Do đó ảnh màu RGBmỗi Pixel có 3 xám Red, Green, Blue khác nhau chứa dữ liệu 8 bit [0;255] hay dữliệu 16 bit [0;65535]
Hình 2.5: Minh họa ảnh màu sau khi mã hóa
2.1.9 Dãy ảnh đa khung
Trong một số ứng dụng, người sử dụng có thể có nhu cầu lưu một chuỗi cácảnh ghi nhận tại những thời điểm liên tiếp nhau để tiện cho việc hiển thị, ví dụ ảnh
từ các đoạn video hoặc các lát cắt từ máy chụp ảnh cộng hưởng từ, Để phục vụcho các ứng dụng này, MATLAB cho phép ta lưu nhiều ảnh thành một dãy, mỗi
ảnh gọi là một frame, bằng hàm cat.
>> multi = cat(4, A1, A2, A3, ) % A1, A2, A3, là các ảnh cần lưu
Ta cũng có thể truy xuất đến một frame trong dãy ảnh đa frame này theo cáchnhư sau:
>> frm3 = multi(:,:,:,3) % truy xuất frame thứ 3
Trang 202.2 CÁC KỸ THUẬT XỬ LÝ ẢNH SỐ
2.2.1 Mục đích của việc xử lý ảnh số
Mục đích đặt ra cho việc xử lý ảnh bao gồm hai mục đích:
Thứ nhất: Biến đổi ảnh hay sự tăng cường ảnh nhằm thu lại ảnh tốt hơn
Để rồi từ đó nhận được nhiều thông tin về ảnh hơn, ta có thể quan sát vàđánh giá được
Thứ hai: Nhận dạng ảnh hay đón nhận ảnh một cách tự động
2.2.2 Kỹ thuật nâng cao chất lượng ảnh
Nâng cao chất lượng ảnh là một bước quan trọng tạo tiền đề cho xử lý ảnh.Làm nổi bật một số đặc tính của ảnh như thay đổi độ tương phản, lọc nhiễu, nổibiên, làm trơn biên ảnh, nhằm hoàn thiện trạng thái quan sát của một ảnh
Tăng cường ảnh không phải là làm tăng lượng thông tin vốn có trong ảnh làmnổi bật các đặc trưng đã chọn Tức điều chỉnh mức xám của điểm ảnh Dùngphương pháp ánh xạ làm thay đổi giá trị điểm sáng
Khôiphục ảnh bao gồm quá trình lọc ảnh, khử nhiễu do môi trường bên ngoàihay các hệ thống thu nhận, phát hiện và lưu trữ ảnh thu được, thông qua các bộ lọctrong miền không gian và trong miền biến đổi Nhằm làm giảm bớt các biến dạng
để khôi phục lại ảnh giống như ảnh gốc
2.2.3 Kỹ thuật biến đổi ảnh
Thuật ngữ biến đổi ảnh thường dùng để nói tới một lớp các ma trận đơn vị, vàcác kỹ thuật dùng để biến đổi ảnh làm giảm thứ nguyên của ảnh để việc xử lý ảnhđược hiệu quả hơn Có nhiều loại biến đổi được dùng như: biến đổi Fourier, Sin,Cosin,…
2.2.4 Kỹ thuật phân tích ảnh
Phân tích ảnh liên quan đến việc xác định các độ đo định lượng của một ảnh để
Trang 21đưa ra một mô tả đầy đủ về ảnh Nhằm mục đích xác định biên của ảnh Có nhiều
kỹ thuật khác nhau như lọc vi phân hay dò theo quy hoạch động Người ta cũngdùng các kỹ thuật để phân vùng ảnh Từ ảnh thu được, người ta tiến hành kỹ thuậttách hay hợp dựa theo các tiêu chuẩn đánh giá như: màu sắc, cường độ… Phươngpháp được biết đến như nhị phân hóa đường biên Cuối cùng, phải kể đến các kỹthuật phân lớp dựa theo cấu trúc
2.2.5 Kỹ thuật nhận dạng ảnh
Nhận dạng ảnh là quá trình liên quan đến các mô tả đối tượng mà người tamuốn đặc tả nó Quá trình nhận dạng thường đi sau quá trình trích chọn các đặctính chủ yếu của đối tượng Có hai kiểu mô tả đối tượng :
Mô tả tham số ( nhận dạng theo tham số)
Mô tả theo cấu trúc ( nhận dạng theo cấu trúc)
Người ta đã áp dụng kỹ thuật nhận dạng khá thành công với nhiều đối tượngkhác nhau như : nhận dạng ảnh vân tay, nhận dạng chữ (chữ cái, chữ số, chữ códấu)
2.3 CÁC PHƯƠNG PHÁP XỬ LÝ ẢNH SỐ
2.3.1 Chuyển ảnh màu RGB thành ảnh mức xám ( Gray level)
Ảnh gốc thường là ảnh màu 24 bit màu nên khó nhận dạng ta cần phải chuyển
về ảnh xám dữ liệu 8 bit để dễ nhận dạng hơn Nghĩa là mỗi pixel được biểu diễn
có thể có cùng hoặc gần cùng một số đặc tính Trong kỹ thuật này, người ta sử
Trang 22dụng một mặt nạ và di chuyển khắp ảnh gốc Tùy theo cách tổ hợp điểm đang xétvới các điểm lân cận mà ta có kỹ thuật lọc tuyến tính hay phi tuyến Điểm ảnh chịutác động của biến đổi là điểm ở tâm mặt nạ.
2.3.2.3 Lọc trung vị (Median Filtering)
Một trong những khó khăn chính trong các phương pháp làm trơn nhiễu là nólàm mờ các đường biên và các chi tiết sắc nét của ảnh (vì chúng tương ứng vớithành phần tần số cao của ảnh, khi cho ảnh qua bộ lọc thông thấp thì không chỉ cónhiễu bị loại trừ mà thành phần tần số cao của ảnh cũng bị suy hao) Lọc trung vị
có ưu điểm là lọc nhiễu nhưng không làm mờ ảnh Trong kỹ thuật này, mức xámcủa điểm ảnh trung tâm được thay thế bằng trung vị của một chuỗi các mức xámcủa các điểm ảnh lân cận thay vì là giá trị trung bình Trung vị m của một chuỗicác giá trị là một giá trị sao cho một nửa các giá trị trong chuỗi nhỏ hơn m và mộtnửa lớn hơn m
Được sử dụng chủ yếu cho giảm nhiễu
Trang 23 Một bộ lọc trung vị cũng dựa vào việc dùng một cửa sổ di chuyển trên ảnh,
và giá trị xám pixel đầu ra được thay thế bởi trung vị của các pixel trongcửa sổ đó
Thuật toán:
Các pixel trong của sổ sẽ được sắp xếp từ nhỏ tới lơn
Nếu kích thước của cửa sổ =JxK là lẻ thì vị trí trung vị là (JxK +1) / 2 , ngược
lại thì vị trí trung vị là JxK / 2
Phương pháp medium filter (lọc trung vị) dùng để lọc nhiễu trước khi qua bước
xử lý tiếp theo, như là phát hiện biên Median filter là một kỹ thuật lọc số tuyếntính
Median filter là một bước phổ biến trong xử lý ảnh
Trung vị được viết với công thức :
v(m,n) = trung vị (y(m-k),n-1)
Kỹ thuật này đòi hỏi giá trị các điểm ảnh trong của sổ phải sắp xếp theo thứ tựtăng hay giảm dần so với giá trị trung bình Kích thước của của sổ thường đượcchọn sao cho điểm ảnh trong của sổ là lẻ Các cửa sổ hay dùng là của sổ có kíchthước 3x3, hay 5x5, hay 7x7
Nếu phân vùng dựa trên các vùng liên thông ta gọi là kỹ thuật phân vùng dựa
Trang 24theo miền đồng nhất Nếu ta phân vùng dựa vào biên gọi là kỹ thuật phân vùngbiên Ngoài ra còn có các kỹ thuật khác như phân vùng dựa vào biên độ, phânvùng theo kết cấu.
2.3.3.1 Phương pháp phân vùng ảnh
Để phân tích các đối tượng trong ảnh, chúng ta cần phải phân biệt được các đốitượng cần quan tâm với phần còn lại của ảnh Những đối tượng này có thể tìmđược nhờ các kỹ thuật phân đoạn ảnh, theo nghĩa tách phần tiền ảnh ra hậu ảnh.Chúng ta cần phải hiểu được là:
Không có kỹ thuật phân đoạn nào là vạn năng, theo nghĩa có thể áp dụng cho
mọi loại ảnh.
Không có kỹ thuật phân đoạn nào là hoàn hảo.
Có thể hiểu phân vùng là tiến trình chia ảnh thành nhiều vùng, mỗi vùng chứamột đối tượng hay nhóm đối tượng cùng kiểu Chẳng hạn, một đối tượng có thể làmột ký tự trên 1 trang văn bản hoặc một đoạn thẳng trong một bản vẽ kỹ thuậthoặc một nhóm đối tượng có thể biểu diễn một từ hay hai đoạn thẳng tiếp xúcnhau Ta có một số phương pháp phân vùng ảnh như sau:
Thuật toán gán nhãn thành phần liên thông:
Kỹ thuật này gán cho mỗi thành phân liên thông của ảnh nhị phân một nhãnriêng biệt Nhãn thường là các số tự nhiên bắt đầu từ một đến tổng số các thànhphần liên thông có trong ảnh Giải thuật quét ảnh từ trái sang phải và từ trênxuống dưới
Trong dòng thứ nhất của các pixel đen, một nhãn duy nhất được gán cho mỗiđường chạy liên tục của pixel đen Với mỗi pixel đen của các dòng tiếp theo, cácpixel lân cận trên dòng trước và pixel bên trái được xem xét Nếu bất kì pixel lâncận nào được gán nhãn, nhãn tương tự được gán cho pixel đen hiện thời, ngược lạinhãn tiếp theo chưa được sử dụng được chọn Thủ tục này được tiếp tục cho tớidòng cuối của ảnh
Ảnh được nhận về là ảnh nhị phân, trong đó có nhiều đối tượng khác nhau tatiến hành chọn ra đối tượng nào là biển số còn đối tượng nào không phải biển số.Dựa vào thuật toán gắn nhãn liên tiếp các đối tượng, cụ thể như sau:
Thuật toán phân vùng ảnh dựa trên kỹ thuật đánh nhãn liên tiếp
Trang 25 Mặt nạ ảnh với 4 điểm lân cận.
Mặt nạ ảnh với 8 điểm lân cận
Mặt nạ với 4 điểm lân cận và 8 điểm lân cận
Quy ước khi quét ảnh:
Nếu điểm ảnh có giá trị là 0 thì gọi là điểm ảnh nền
Nếu điểm ảnh có giá trị là 1 thì gọi là điểm ảnh nổi
Ta chỉ đánh nhãn các điểm ảnh nổi
Quá trình đánh nhãn ảnh được thực hiện theo các bước sau:
Bước 1: Tiến hành quét lần lượt tất cả các điểm ảnh từ trái sang phải, từ trên
xuống dưới Nếu gặp điểm ảnh nền thì bỏ qua, nếu gặp điểm ảnh nổi thì tiếnhành đánh nhãn Trước khi đánh nhãn cho mỗi điểm ảnh nổi, ta cần quan tâmđến giá trị của điểm ảnh phía trên và điểm ảnh bên trái của điểm ảnh ta đangxét Nếu các điểm ảnh này đã được đánh nhãn thì điểm ảnh đang xét được đánhnhãn trùng với điểm ảnh trên hoặc điểm ảnh bên trái đó Nếu các điểm ảnh bêntrên và điểm ảnh bên trái là các điểm ảnh nền thì ta đánh nhãn mới cho điểmảnh đang xét
Bước 2: Sau khi đánh nhãn tất cả các điểm ảnh nổi, ta cần nhóm các điểm ảnh
ở gần nhau nhưng lại được đánh nhãn khác nhau lại với nhau
Bước 3: Thực hiện quét lại và đánh nhãn mới cho các nhóm điểm ảnh vừa
được nhóm lại ở trên
2.3.3.2 Khái niệm biên
Biên là một vấn đề chủ yếu trong phân tích ảnh vì các kỹ thuật ảnh chủ yếudựa vào biên Một điểm ảnh có thể coi là biên nếu ở đó có sự thay đổi đột ngột vềmức xám Tập hợp các điểm tạo thành biên hay đường bao của ảnh
2.3.3.3 Thuật toán dò biên tổng quát
Biểu diễn đối tượng ảnh theo chu tuyến thường dựa trên các kỹ thuật dò biên
Có hai kỹ thuật dò biên cơ bản Kỹ thuật thứ nhất xét ảnh biên thu được từ ảnhvùng sau một lần duyệt như một đồ thị, sau đó áp dụng các thuật toán duyệt cạnh
đồ thị Kỹ thuật thứ hai dựa trên ảnh vùng, kết hợp đồng thời quá trình dò biên vàtách biên Ở đây ta quan tâm cách tiếp cận thứ hai Trước hết, giả sử ảnh được xétchỉ bao gồm một vùng ảnh 8 liên thông ℑ, được bao bọc bởi một vành đai các
Trang 26điểm nền Dễ thấy ℑ là một vùng 4 liên thông chỉ là một trường riêng của trườnghợp trên Về cơ bản, các thuật toán dò biên trên một vùng đều bao gồm các bướcsau:
Xác định điểm biên xuất phát
Dự báo và xác định điểm biên tiếp theo
Lặp bước 2 cho đến khi gặp điểm xuất phát
Do xuất phát từ những tiêu chuẩn và định nghĩa khác nhau về điểm biên, vàquan hệ liên thông, các thuật toán dò biên cho ta các đường biên mang các sắc tháirất khác nhau Kết quả tác động của toán tử dò biên lên một điểm biên ri là điểmbiên ri+1 (8 láng giềng của ri) Thông thường các toán tử này được xây dựng nhưmột hàm đại số Boolean trên các 8 láng giềng của ri Mỗi cách xây dựng các toán
tử đều phụ thuộc vào định nghĩa quan hệ liên thông và điểm biên Do đó sẽ gâykhó khăn cho việc khảo sát các tính chất của đường biên Ngoài ra, vì mỗi bước dòbiên đều phải kiểm tra tất cả các 8 láng giềng của mỗi điểm nên thuật toán thườngkém hiệu quả Để khắc phục các hạn chế trên, thay vì sử dụng một điểm biên ta sửdụng cặp điểm biên (một thuộc ℑ, một thuộc ℑ ), các cặp điểm này tạo nên tậpnền vùng, kí hiệu là NV và phân tích toán tử dò biên thành 2 bước:
Xác định cặp điểm nền vùng tiếp theo
Lựa chọn điểm biên
Trong đó bước thứ nhất thực hiện chức năng của một ánh xạ trên tập NV lên
NV và bước thứ hai thực hiện chức năng chọn điểm biên
Thuật toán dò biên tổng quát:
Bước 1: Xác định cặp nền-vùng xuất phát.
Bước 2: Xác định cặp nền-vùng tiếp theo.
Bước 3: Lựa chọn điểm biên vùng.
Bước 4: Nếu gặp lại cặp xuất phát thì dừng, nếu không quay lại bước 2
Việc xác định cặp nền-vùng xuất phát được thực hiện bằng cách duyệt ảnh lầnlượt từ trên xuống dưới và từ trái qua phải rồi kiểm tra điều kiện lựa chọn cặp nền-vùng Do việc chọn điểm biên chỉ mang tính chất quy ước, nên ta gọi ánh xạ xácđịnh cặp nền-vùng tiếp theo là toán tử dò biên
Định nghĩa: Toán tử dò biên
Trang 27Giả sử T là một ánh xạ như sau: T: NV → NV, (b,r) → (b’,r’) Gọi T là mộttoán tử dò biên cơ sở nếu nó thoả mãn điều kiện: b’,r’ là các 8 láng giềng của r.Giả sử (b,r) ℑ NV, gọi K(b,r) là hàm chọn điểm biên Biên của một dạng ℑ có thểđịnh nghĩa theo một trong ba cách:
• Tập những điểm thuộc ℑ có mặt trên NV, tức là K(b,r)= r
• Tập những điểm thuộc ℑ có trên NV, tức là K(b,r)= b
• Tập những điểm ảo nằm giữa cặp nền-vùng, tức là K(b,r) là những điểm nằmgiữa hai điểm b và r
2.3.3.4 Phát hiện biên
Từ định nghĩa toán học của biên người ta sử dụng hai phương pháp phát hiệnbiên như sau:
Phương pháp phát hiện biên trực tiếp: phương pháp này chủ yếu dựa vào sự
biến thiên độ sáng của điểm ảnh để làm nổi biên bằng kỹ thuật đạo hàm :
Nếu lấy đạo hàm bậc nhất của ảnh: ta có phương pháp Gradient
Nếu lấy đạo hàm bậc hai của ảnh: ta có phương pháp Laplace
Hai phương pháp này được gọi chung là phương pháp dò biên cục bộ
Ngoài ra, người ta còn sử dụng phương pháp “đi theo đường bao” dựa vàocông cụ toán học là nguyên lý quy hoạch động và được gọi là phương pháp dòbiên tổng thể Phương pháp dò biên trực tiếp có hiệu quả và ít bị tác động củanhiễu
Phương pháp phát hiện biên gián tiếp: nếu bằng cách nào đấy, chúng ta thu
được các vùng ảnh khác nhau thì đường phân cách giữa các vùng đó chính làbiên Nói cách khác, việc xác định đường bao của ảnh được thực hiện từ ảnh đãđược phân vùng Phương pháp dò biên gián tiếp khó cài đặt nhưng áp dụng tốtkhi sự biến thiên độ sáng nhỏ
2.3.3.5 Biến đổi Radon
Biến đổi Radon dùng để biến đổi ảnh trong không gian 2 chiều với các đườngthẳng thành miền Radon, trong đó mỗi đường thẳng trên ảnh sẽ cho một điểmtrong miền Radon
Công thức toán học của biến đổi Radon:
Trang 28Phương trình trên biểu diễn việc lấy tích phân dọc theo đường thẳng s trên ảnh,trong đó p khoảng cách của đường thẳng so với gốc tọa độ O, phi là góc lệch sovới phương ngang.
Hình 2.6: Mô tả biến đổi Radon
Ứng dụng trong xử lý ảnh số:
Biến đổi Radon tính toán hình chiếu của ma trận ảnh dọc theo một số hướngxác định Hình chiếu của một hàm số 2 chiều f(x,y) là tập hợp các tích phânđường Hàm Radon tính toán các tích phân đường dọc theo các tia (beam) songsong theo các phương khác nhau (bằng cách xoay hệ trục tọa độ xung quanh gốc
0 theo các giá trị khác nhau), chiều rộng các tia là 1 pixel Hình dưới đây biểudiễn một hình chiếu đơn giản theo một giá trị của góc
Trang 29Hình 2.7: Hình chiếu theo một góc cho trước trong biến đổi Radon
Công thức tổng quát phía trên có thể viết lại như sau:
Hình sau sẽ biểu diễn phép biến đổi Radon dưới dạng hình học
Hình 2.8: Phép biến đổi Radon dưới hình dạng hình họcCác bước thực hiện phát hiện các đường thẳng trên ảnh bằng biến đổi Radon:
Biến đổi ảnh về ảnh biên nhị phân
Trang 30Hình 2.9: Biến đổi ảnh mức xám sang nhị phân
Thực hiện biến đổi Radon trên ảnh biên với theta = 0:179
Giá trị R của biến đổi Radon được biểu diễn như sau:
Hình 2.10: Thể hiện miền Radon
Tìm các giá trị lớn nhất của R trong ma trận biến đổi Radon.
Vị trí các giá trị lớn nhất này tương ứng với vị trí của các đường thẳng trongảnh ban đầu Trong hình sau, giá trị lớn nhất của R ở vị trí =1 độ, x’=-80 Đườngthẳng vuông góc với đường thẳng =1, ở vị trí x’=-80 chính là đường thẳng rõ nhấttrong ảnh biên nhị phân (đường thẳng này được đánh dấu màu đỏ) Một đườngthẳng khá rõ khác song song với đường thẳng màu đỏ cũng xuất hiện ở giá trị = 1
độ và đường thẳng vuông góc xuất hiện ở = 91 độ
Trang 31Hình 2.11: Thể hiện sự phát hiện các đường thẳng trong biến đổi Radon
Ở đây chúng ta cần chú ý là giá trị max ứng với R max không phải giá trị góclệch của đường thẳng mà chỉ là góc lệch của trục Ox’ so với trục Ox ban đầu.Quan sát hình vẽ sau ta sẽ thấy rõ vấn đề
Trường hợp đường thẳng lệch xuống phía dưới Giá trị góc lệch cần tìm sẽbằng 90 - max , ta thấy > 0, nên ảnh được xoay theo chiều ngược chiều kim đồnghồ
Hình 2.12: Trường hợp các đường thẳng lệch về phía dưới
Trường hợp đường thẳng lệch lên phía trên Góc lệch : = 90 - max, ta thấy <
0, nên khi ảnh được xoay theo chiều thuận chiều kim đồng hồ
Trang 32Hình 2.13: Trường hợp các đường thẳng lệch về phía trên
CHƯƠNG 3
CHƯƠNG TRÌNH NHẬN DẠNG BIỂN SỐ XE
3.1 KHÁI QUÁT CHƯƠNG TRÌNH
Mục đích của đề tài là xây dựng một chương trình đọc biển số xe tại một vị trí
cố định, ví dụ như ở lối vào của khu vực bãi đậu xe Hệ thống xây dựng dựa vàomột máy tính PC thông thường có giao tiếp với một máy ghi hình (camera haywebcam) nhằm đáp ứng trạng thái thực chụp lấy ảnh, hay một ảnh được chụp từmáy ảnh, để tạo một ảnh ( ảnh gốc) được đưa vào máy tính PC Từ những hìnhảnh thu được có chứa biển số xe thì phần mền sẽ xử lý nhận dạng và kết quả đưa
ra biển số xe Một khi biển số xe được phát hiện (nhận dạng), các chữ số của nóđược đọc và xuất ra trên giao diện người dùng và đối chiếu lại với cơ sở dữ liệu Quá trình nhận dạng biển số xe từ ảnh thu được thực hiện theo từng giai đoạn khácnhau, có thể tóm tắt theo sơ đồ khối như sau:
Trang 33Hình 3.1: Sơ đồ khối chương trình nhận dạng biển số xe
Đối với xe 2 bánh ( xe gắn máy) biển số có 8 kí tự và chia làm 2 hàng mỗi
hàng có 4 kí tự, theo qui định của nhà nước hiện hành.
Lưu đồ giải thuật chương trình nhận dạng biển số xe:
Hình 3.2: Lưu đồ giải thuật chương trình nhận dạng biển số xe