Nghiên cứu về mạng neural tích chập và ứng dụng cho bài toán nhận dạng biển số xe luận văn thạc sĩ công nghệ thông tin hà nội 2016

Luận văn thạc sĩ kỹ thuật nghiên cứu Nghiên cứu về mạng neural tích chập và ứng dụng cho bài toán nhận dạng biển số xe luận văn thạc sĩ, khảo sát thực trạng, phân tích nguyên

Trường đại học

Đại học Quốc gia Hà Nội

Chuyên ngành

Công nghệ thông tin

Người đăng

Ẩn danh

Thể loại

luận văn

2016

58
2
0

Phí lưu trữ

30 Point

Mục lục chi tiết

LỜI CAM ĐOAN

LỜI MỞ ĐẦU

1. CHƯƠNG 1: MẠNG NEURAL VÀ MẠNG NEURAL TÍCH CHẬP

1.1. Mạng neural và mạng neural lan truyền ngược

1.2. Giới thiệu về mạng Neural

1.3. Một số kiểu mạng Neural

1.4. Mạng Neural lan truyền ngược MLP

2. CHƯƠNG 2: TỔNG QUAN VỀ NHẬN DẠNG BIỂN SỐ XE

2.1. Khái niệm về hệ thống nhận dạng biển số xe

2.2. Lịch sử và phát triển

2.3. Cách thức hoạt động của hệ thống nhận dạng biển số xe

2.4. Phân loại các ứng dụng nhận dạng biển số xe

2.5. Ứng dụng thực tiễn tại Việt Nam

2.6. Phân loại biển số xe

2.7. Phương pháp nhận dạng biển số xe từ ảnh chụp của camera

2.8. Phương pháp chuyển đổi Hough

2.9. Phương pháp hình thái học

2.10. Phương pháp nhận dạng ký tự trong biển số xe

2.11. Phạm vi nghiên cứu và hướng giải quyết

3. CHƯƠNG 3: ÁP DỤNG MẠNG NEURAL TÍCH CHẬP TRONG NHẬN DẠNG KÝ TỰ

3.1. Xây dựng mô hình mạng

3.2. Kết quả nhận dạng ký tự viết tay

3.3. Kết quả thực nghiệm nhận dạng biển số xe với mạng Neural tích chập

3.4. Hướng phát triển của bài toán

DANH MỤC TÀI LIỆU THAM KHẢO

Tóm tắt

I. Tổng quan về mạng neural tích chập và nhận dạng biển số xe

Mạng neural tích chập (CNN) đã trở thành một công cụ mạnh mẽ trong lĩnh vực nhận dạng hình ảnh, đặc biệt là trong bài toán nhận dạng biển số xe. Luận văn thạc sĩ công nghệ thông tin của Lê Thị Thu Hằng năm 2016 đã nghiên cứu sâu về ứng dụng của mạng neural tích chập trong việc nhận diện biển số xe. Nghiên cứu này không chỉ cung cấp cái nhìn tổng quan về mạng neural mà còn chỉ ra những thách thức và giải pháp trong việc áp dụng công nghệ này vào thực tiễn.

1.1. Khái niệm về mạng neural và mạng neural tích chập

Mạng neural là một mô hình xử lý thông tin phỏng theo cách thức hoạt động của não bộ. Mạng neural tích chập (CNN) là một loại mạng neural được thiết kế đặc biệt để xử lý dữ liệu có cấu trúc dạng lưới, như hình ảnh. CNN sử dụng các lớp tích chập để phát hiện các đặc trưng trong hình ảnh, từ đó giúp cải thiện độ chính xác trong nhận dạng biển số xe.

1.2. Lịch sử và phát triển của nhận dạng biển số xe

Nhận dạng biển số xe đã trải qua nhiều giai đoạn phát triển, từ các phương pháp truyền thống đến các giải pháp hiện đại sử dụng công nghệ AI. Các hệ thống nhận dạng biển số xe hiện nay thường sử dụng mạng neural tích chập để cải thiện độ chính xác và tốc độ xử lý. Nghiên cứu của Lê Thị Thu Hằng đã chỉ ra rằng việc áp dụng CNN trong nhận dạng biển số xe mang lại kết quả khả quan hơn so với các phương pháp trước đây.

II. Thách thức trong việc áp dụng mạng neural tích chập cho nhận dạng biển số xe

Mặc dù mạng neural tích chập đã chứng minh được hiệu quả trong nhiều ứng dụng, nhưng việc áp dụng nó cho bài toán nhận dạng biển số xe vẫn gặp phải một số thách thức. Những thách thức này bao gồm độ phức tạp của hình ảnh, sự biến đổi trong điều kiện ánh sáng và góc chụp, cũng như sự đa dạng trong kiểu dáng và kích thước của biển số xe.

2.1. Độ phức tạp của hình ảnh và điều kiện môi trường

Hình ảnh biển số xe có thể bị ảnh hưởng bởi nhiều yếu tố như ánh sáng, thời tiết và góc chụp. Điều này làm cho việc nhận diện trở nên khó khăn hơn. Nghiên cứu đã chỉ ra rằng việc sử dụng các kỹ thuật tiền xử lý hình ảnh có thể giúp cải thiện độ chính xác của mô hình.

2.2. Sự đa dạng trong kiểu dáng và kích thước biển số xe

Biển số xe có nhiều kiểu dáng và kích thước khác nhau tùy thuộc vào từng quốc gia và khu vực. Điều này tạo ra thách thức lớn cho các mô hình nhận dạng. Việc xây dựng một tập dữ liệu huấn luyện đa dạng và phong phú là rất cần thiết để cải thiện khả năng tổng quát của mô hình.

III. Phương pháp xây dựng mô hình mạng neural tích chập cho nhận dạng biển số xe

Để giải quyết các thách thức trong nhận dạng biển số xe, nghiên cứu đã đề xuất một phương pháp xây dựng mô hình mạng neural tích chập hiệu quả. Phương pháp này bao gồm việc thiết kế kiến trúc mạng, lựa chọn các tham số tối ưu và áp dụng các kỹ thuật huấn luyện phù hợp.

3.1. Thiết kế kiến trúc mạng neural tích chập

Kiến trúc của mạng neural tích chập thường bao gồm nhiều lớp tích chập và lớp kết nối đầy đủ. Mỗi lớp tích chập có nhiệm vụ phát hiện các đặc trưng khác nhau trong hình ảnh. Việc lựa chọn số lượng lớp và kích thước của các bộ lọc là rất quan trọng để đạt được hiệu quả cao trong nhận dạng biển số xe.

3.2. Kỹ thuật huấn luyện và tối ưu hóa mô hình

Quá trình huấn luyện mô hình mạng neural tích chập bao gồm việc sử dụng các tập dữ liệu huấn luyện để điều chỉnh các trọng số của mạng. Các kỹ thuật như giảm thiểu hàm mất mát và tối ưu hóa trọng số là rất quan trọng để cải thiện độ chính xác của mô hình. Nghiên cứu đã áp dụng các phương pháp như Adam và SGD để đạt được kết quả tốt nhất.

IV. Ứng dụng thực tiễn của mạng neural tích chập trong nhận dạng biển số xe

Mạng neural tích chập đã được áp dụng thành công trong nhiều hệ thống nhận dạng biển số xe trên thực tế. Các ứng dụng này không chỉ giúp cải thiện độ chính xác mà còn tăng tốc độ xử lý, từ đó nâng cao hiệu quả trong việc quản lý giao thông và an ninh.

4.1. Hệ thống nhận dạng biển số xe tự động

Hệ thống nhận dạng biển số xe tự động sử dụng mạng neural tích chập để nhận diện và phân loại biển số xe trong thời gian thực. Các hệ thống này đã được triển khai tại nhiều thành phố lớn, giúp cải thiện quản lý giao thông và an ninh.

4.2. Kết quả nghiên cứu và đánh giá hiệu quả

Nghiên cứu của Lê Thị Thu Hằng đã chỉ ra rằng việc áp dụng mạng neural tích chập trong nhận dạng biển số xe mang lại độ chính xác cao, với tỷ lệ nhận diện lên đến 95%. Kết quả này cho thấy tiềm năng lớn của công nghệ AI trong lĩnh vực nhận dạng hình ảnh.

V. Kết luận và tương lai của mạng neural tích chập trong nhận dạng biển số xe

Mạng neural tích chập đã chứng minh được vai trò quan trọng trong việc nhận dạng biển số xe. Tương lai của công nghệ này hứa hẹn sẽ còn phát triển mạnh mẽ hơn nữa với sự tiến bộ của AI và công nghệ máy học. Việc nghiên cứu và phát triển các mô hình mới sẽ giúp cải thiện độ chính xác và khả năng tổng quát của các hệ thống nhận dạng biển số xe.

5.1. Xu hướng phát triển công nghệ nhận dạng biển số xe

Trong tương lai, công nghệ nhận dạng biển số xe sẽ tiếp tục phát triển với sự hỗ trợ của các kỹ thuật học sâu và mạng neural tích chập. Các nghiên cứu mới sẽ tập trung vào việc cải thiện độ chính xác và khả năng xử lý trong các điều kiện thực tế khác nhau.

5.2. Tầm quan trọng của nghiên cứu và phát triển trong lĩnh vực này

Nghiên cứu và phát triển trong lĩnh vực nhận dạng biển số xe không chỉ giúp cải thiện hiệu quả quản lý giao thông mà còn đóng góp vào an ninh công cộng. Việc áp dụng công nghệ AI trong nhận dạng hình ảnh sẽ mở ra nhiều cơ hội mới cho các ứng dụng trong tương lai.

16/08/2025
Nghiên cứu về mạng neural tích chập và ứng dụng cho bài toán nhận dạng biển số xe luận văn thạc sĩ công nghệ thông tin hà nội 2016

Trích đoạn nội dung tài liệu

LỜI MỞ ĐẦU Deep Learning là một thuật toán dựa trên một số ý tƣởng từ não bộ tới việc tiếp thu nhiều tầng biểu đạt, cả cụ thể lẫn trừu tƣợng, qua đó làm rõ nghĩa của các loại dữ liệu. Deep Learning đƣợc ứng dụng trong nhận diện hình ảnh, nhận diện giọng nói, xử lý ngôn ngữ tự nhiên Hiện nay rất nhiều các bài toán nhận dạng sử dụng deep learning để giải quyết do deep learning có thể giải quyết các bài toán với số lƣợng lớn, kích thƣớc đầu vào lớn với hiệu năng cũng nhƣ độ chính xác vƣợt trội so với các phƣơng pháp phân lớp truyền thống Những năm gần đây, ta đã chứng kiến đƣợc nhiều thành tựu vƣợt bậc trong ngành Thị giác máy tính (Computer Vision). Các hệ thống xử lý ảnh lớn nhƣ Facebook, Google hay Amazon đã đƣa vào sản phẩm của mình những chức năng thông minh nhƣ nhận diện khuôn mặt ngƣời dùng, phát triển xe hơi tự lái hay drone giao hàng tự động. Convolutional Neural Network (CNNs – Mạng nơ-ron tích chập) là một trong những mô hình Deep Learning tiên tiến giúp cho chúng ta xây dựng đƣợc những hệ thống thông minh với độ chính xác cao nhƣ hiện nay.

Trong luận văn cao học này, em đi vào nghiên cứu về mạng neural cũng nhƣ mạng Convolution (tích chập) cũng nhƣ ý tƣởng của mô hình CNNs trong phân lớp ảnh (Image Classification), và áp dụng trong việc xây dựng hệ thống nhận dạng biển số xe tự động Nội dung bài báo cáo bao gồm 3 chƣơng.  Chƣơng 1: Mạng neural và mạng neural tích chập.  Chƣơng 2: Tổng quan về nhận dạng biển số xe.  Chƣơng 3: Áp dụng mạng neural tích chập trong nhận dạng ký tự LỜI CẢM ƠN Em xin chân thành cảm ơn các thầy, các cô khoa Công nghệ Thông tin- Trƣờng Đại học Công nghệ - Đại học quốc gia Hà Nội đã tận tình dạy dỗ, truyền đạt cho em nhiều kiến thức quý báu.

Em xin tỏ lòng biết ơn sâu sắc đến thầy Ts Nguyễn Văn Vinh, ngƣời đã tận tình giúp đỡ và truyền đạt nhiều kinh nghiệm để đề tài có thể đƣợc thực hiện và hoàn thành. Xin chân thành cảm ơn các bạn trong khoa Công Nghệ Thông Tin, Trƣờng ĐH Công nghệ đã giúp đỡ, động viên tôi rất nhiều trong quá trình thực hiện đề tài. Em xin chân thành cảm ơn ! Hà nội, tháng 5 năm 2016 Học viên Lê Thị Thu Hằng CHƢƠNG 1: MẠNG NEURAL VÀ MẠNG NEURAL TÍCH CHẬP 1. Mạng neural và mạng neural lan truyền ngƣợc 1.

Giới thiệu về mạng Neural Định nghĩa: Mạng nơron nhân tạo, Artificial Neural Network (ANN) là một mô hình xử lý thông tin phỏng theo cách thức xử lý thông tin của các hệ nơron sinh học. Nó đƣợc tạo nên từ một số lƣợng lớn các phần tử (nơron) kết nối với nhau thông qua các liên kết (trọng số liên kết) làm việc nhƣ một thể thống nhất để giải quyết một vấn đề cụ thể nào đó. Một mạng nơron nhân tạo đƣợc cấu hình cho một ứng dụng cụ thể (nhận dạng mẫu, phân loại dữ liệu,.) thông qua một quá trình học từ tập các mẫu huấn luyện. Về bản chất học chính là quá trình hiệu chỉnh trọng số liên kết giữa các nơron.

Cấu trúc neural nhân tạo: Hình 1. Cấu tạo một Neural Các thành phần cơ bản của một nơron nhân tạo bao gồm: • Tập các đầu vào: Là các tín hiệu vào (input signals) của nơron, các tín hiệu này thƣờng đƣợc đƣa vào dƣới dạng một vector N chiều. • Tập các liên kết: Mỗi liên kết đƣợc thể hiện bởi một trọng số liên kết – Synaptic weight. Trọng số liên kết giữa tín hiệu vào thứ j với nơron k thƣờng đƣợc kí hiệu là wkj.

Thông thƣờng, các trọng số này đƣợc khởi tạo một cách ngẫu nhiên ở thời điểm khởi tạo mạng và đƣợc cập nhật liên tục trong quá trình học mạng. • Bộ tổng (Summing function): Thƣờng dùng để tính tổng của tích các đầu vào với trọng số liên kết của nó. • Ngƣỡng (còn gọi là một độ lệch - bias): Ngƣỡng này thƣờng đƣợc đƣa vào nhƣ một thành phần của hàm truyền. • Hàm truyền (Transfer function): Hàm này đƣợc dùng để giới hạn phạm vi đầu ra của mỗi nơron.

Nó nhận đầu vào là kết quả của hàm tổng và ngƣỡng. • Đầu ra: Là tín hiệu đầu ra của một nơron, với mỗi nơron sẽ có tối đa là một đầu ra. Xét về mặt toán học, cấu trúc của một nơron k, đƣợc mô tả bằng cặp biểu thức sau: Trong đó: x1, x2, ., xp: là các tín hiệu vào; (wk1, wk2,., wkp) là các trọng số liên kết của nơron thứ k; uk là hàm tổng; bk là một ngƣỡng; f là hàm truyền và yk là tín hiệu đầu ra của nơron. Nhƣ vậy nơron nhân tạo nhận các tín hiệu đầu vào, xử lý (nhân các tín hiệu này với trọng số liên kết, tính tổng các tích thu đƣợc rồi gửi kết quả tới hàm truyền), và cho một tín hiệu đầu ra ( là kết quả của hàm truyền).

Một số hàm truyền thông dụng Hàm truyền Đồ thị Định nghĩa Symmetrical Hard Limit (hardlims) Linear (purelin) Saturating Linear (satlin) Log-Sigmoid (logsig) 1. Một số kiểu mạng Neural Cách thức kết nối các nơron trong mạng xác định kiến trúc (topology) của mạng. Các nơron trong mạng có thể kết nối đầy đủ (fully connected) tức là mỗi nơron đều đƣợc kết nối với tất cả các nơron khác, hoặc kết nối cục bộ (partially connected) chẳng hạn chỉ kết nối giữa các nơron trong các tầng khác nhau. Ngƣời ta chia ra hai loại kiến trúc mạng chính: ♦ Tự kết hợp (autoassociative): là mạng có các nơron đầu vào cũng là các nơron đầu ra.

Mạng Hopfield là một kiểu mạng tự kết hợp. Mạng tự kết hợp ♦ Kết hợp khác kiểu (heteroassociative): là mạng có tập nơron đầu vào và đầu ra riêng biệt. Perceptron, các mạng Perceptron nhiều tầng (MLP: MultiLayer Perceptron), mạng Kohonen, … thuộc loại này. Mạng kết hợp khác kiểu Ngoài ra tùy thuộc vào mạng có các kết nối ngƣợc (feedback connections) từ các nơron đầu ra tới các nơron đầu vào hay không, ngƣời ta chia ra làm 2 loại kiến trúc mạng.

♦ Kiến trúc truyền thẳng (feedforward architechture): là kiểu kiến trúc mạng không có các kết nối ngƣợc trở lại từ các nơron đầu ra về các nơron đầu vào; mạng không lƣu lại các giá trị output trƣớc và các trạng thái kích hoạt của nơron. Các mạng nơron truyền thẳng cho phép tín hiệu di chuyển theo một đƣờng duy nhất; từ đầu vào tới đầu ra, đầu ra của một tầng bất kì sẽ không ảnh hƣởng tới tầng đó. Các mạng kiểu Perceptron là mạng truyền thẳng. Mạng truyền thẳng ♦ Kiến trúc phản hồi (Feedback architecture): là kiểu kiến trúc mạng có các kết nối từ nơron đầu ra tới nơron đầu vào.

Mạng lƣu lại các trạng thái trƣớc đó, và trạng thái tiếp theo không chỉ phụ thuộc vào các tín hiệu đầu vào mà còn phụ thuộc vào các trạng thái trƣớc đó của mạng. Mạng Hopfield thuộc loại này. Mạng phản hồi 1. Mạng Neural lan truyền ngƣợc MLP a.

Kiến trúc mạng MLP Mô hình mạng nơron đƣợc sử dụng rộng rãi nhất là mô hình mạng nhiều tầng truyền thẳng (MLP: Multi Layer Perceptron). Một mạng MLP tổng quát là mạng có n (n≥2) tầng (thông thƣờng tầng đầu vào không đƣợc tính đến): trong đó gồm một tầng đầu ra (tầng thứ n) và (n-1) tầng ẩn. Mạng neural lan truyền ngược MLP Kiến trúc của một mạng MLP tổng quát có thể mô tả nhƣ sau: ♦ Đầu vào là các vector (x1, x2, ., xp) trong không gian p chiều, đầu ra là các vector (y1, y2, ., yq) trong không gian q chiều. Đối với các bài toán phân loại, p chính là kích thƣớc của mẫu đầu vào, q chính là số lớp cần phân loại.

Xét ví dụ trong bài toán nhận dạng chữ số: với mỗi mẫu ta lƣu tọa độ (x,y) của 8 điểm trên chữ số đó, và nhiệm vụ của mạng là phân loại các mẫu này vào một trong 10 lớp tƣơng ứng với 10 chữ số 0, 1, …, 9. Khi đó p là kích thƣớc mẫu và bằng 8 x 2 = 16; q là số lớp và bằng 10. ♦ Mỗi nơron thuộc tầng sau liên kết với tất cả các nơron thuộc tầng liền trƣớc nó. ♦ Đầu ra của nơron tầng trƣớc là đầu vào của nơron thuộc tầng liền sau nó.

Hoạt động của mạng MLP nhƣ sau: tại tầng đầu vào các nơron nhận tín hiệu vào xử lý (tính tổng trọng số, gửi tới hàm truyền) rồi cho ra kết quả (là kết quả của hàm truyền); kết quả này sẽ đƣợc truyền tới các nơron thuộc tầng ẩn thứ nhất; các nơron tại đây tiếp nhận nhƣ là tín hiệu đầu vào, xử lý và gửi kết quả đến tầng ẩn thứ 2;…; quá trình tiếp tục cho đến khi các nơron thuộc tầng ra cho kết quả. Một số kết quả đã đƣợc chứng minh: ♦ Bất kì một hàm Boolean nào cũng có thể biểu diễn đƣợc bởi một mạng MLP 2 tầng trong đó các nơron sử dụng hàm truyền sigmoid. ♦ Tất cả các hàm liên tục đều có thể xấp xỉ bởi một mạng MLP 2 tầng sử dụng hàm truyền sigmoid cho các nơron tầng ẩn và hàm truyền tuyến tính cho các nơron tầng ra với sai số nhỏ tùy ý. ♦ Mọi hàm bất kỳ đều có thể xấp xỉ bởi một mạng MLP 3 tầng sử dụng hàm truyền sigmoid cho các nơron tầng ẩn và hàm truyền tuyến tính cho các nơron tầng ra.

Huấn luyện mạng MLP: + Các phƣơng pháp học: Khái niệm: Học là quá trình thay đổi hành vi của các vật theo một cách nào đó làm cho chúng có thể thực hiện tốt hơn trong tƣơng lai. Một mạng nơron đƣợc huyấn luyện sao cho với một tập các vector đầu vào X, mạng có khả năng tạo ra tập các vector đầu ra mong muốn Y của nó. Tập X đƣợc sử dụng cho huấn luyện mạng đƣợc gọi là tập huấn luyện (training set). Các phần tử x thuộc X đƣợc gọi là các mẫu huấn luyện (training example).

Quá trình huấn luyện bản chất là sự thay đổi các trọng số liên kết của mạng. Trong quá trình này, các trọng số của mạng sẽ hội tụ dần tới các giá trị sao cho với mỗi vector đầu vào x từ tập huấn luyện, mạng sẽ cho ra vector đầu ra y nhƣ mong muốn Có ba phƣơng pháp học phổ biến là học có giám sát (supervised learning), học không giám sát (unsupervised learning) và học tăng cƣờng (Reinforcement learning): ♦ Học có giám sát: Là quá trình học có sự tham gia giám sát của một “thầy giáo”. Cũng giống nhƣ việc ta dạy một em nhỏ các chữ cái. Ta đƣa ra một chữ “a” và bảo với em đó rằng đây là chữ “a”.

Việc này đƣợc thực hiện trên tất cả các mẫu chữ cái.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ