Gidi thiéu dé tai Đề tài “xây dựng ứng dụng nhận diện biển báo giao thông” ứng dụng các ky thuật phân tích dữ liệu tiên tiến xây dựng ung dung nhan dién bién bao giao thong, bao gồm các
Thuật toán CNN (Convolutional Neural Network - CNN)
Mang no-ron tich chap CNN (Convolutional Neural Network - CNN)
Giới thiệu về thuật toán
Mạng nơ-ron tích chập (CNN) là một trong những mô hình Deep Learning tiên tiến, giúp xây dựng các hệ thống thông minh với độ chính xác cao CNN thường được áp dụng trong các bài toán nhận dạng đối tượng trong hình ảnh.
Mạng CNN bao gồm nhiều lớp Convolution được xếp chồng lên nhau, sử dụng các hàm kích hoạt phi tuyến như ReLU và tanh để điều chỉnh trọng số trong các nút Sau khi trải qua các hàm kích hoạt, mỗi lớp sẽ tạo ra thông tin trừu tượng hơn cho các lớp tiếp theo.
Mỗi lớp trong mạng nơ-ron sau khi áp dụng các hàm kích hoạt sẽ tạo ra thông tin trừu tượng hơn cho các lớp tiếp theo Trong mô hình mạng nơ-ron truyền ngược, mỗi nơ-ron đầu vào kết nối với mỗi nơ-ron đầu ra trong các lớp tiếp theo.
Mô hình mạng kết nối đầy đủ, hay còn gọi là mạng toàn vẹn, khác với các mô hình CNNs, nơi các layer được liên kết thông qua cơ chế convolution.
Lớp tiếp theo trong mạng nơ-ron tích chập (CNN) là kết quả của phép tích chập từ lớp trước, cho phép thiết lập các kết nối cục bộ Mỗi nơ-ron ở lớp kế tiếp được hình thành từ kết quả của bộ lọc áp dụng lên một vùng ảnh cục bộ của nơ-ron ở lớp trước.
Mỗi lớp trong mạng nơ-ron sử dụng hàng trăm đến hàng nghìn bộ lọc khác nhau để kết hợp và tối ưu hóa kết quả Ngoài ra, một số lớp như pooling và subsampling được sử dụng để lọc và giữ lại những thông tin hữu ích, đồng thời loại bỏ các tín hiệu nhiễu không cần thiết.
Trong quá trình huấn luyện mạng nơ-ron tích chập (CNN), các giá trị được học qua các lớp bộ lọc dựa vào cách thức thực hiện Ví dụ, trong tác vụ phân loại ảnh, CNN sẽ tìm ra các thông số tối ưu cho các bộ lọc tương ứng theo thứ tự: điểm ảnh > cạnh > hình dạng > đặc trưng > đặc trưng cấp cao Lớp cuối cùng được sử dụng để phân loại ảnh.
Convolutions Subsampling Convolutions Subsampling Fully connected
Hình 3 Cấu trúc mang CNN
Trong mô hình CNN, hai khía cạnh quan trọng cần lưu ý là tính bất biến (Location Invariance) và tính kết hợp (Compositionality) Khi một đối tượng được chiếu từ các góc độ khác nhau như dịch chuyển, xoay và thay đổi kích thước, độ chính xác của thuật toán sẽ bị ảnh hưởng đáng kể.
Lớp pooling giúp đạt được tính bất biến đối với các phép biến đổi như dịch chuyển, quay và co giãn Nó cũng cung cấp khả năng kết hợp cục bộ, cho phép biểu diễn thông tin từ mức độ thấp đến cao và trừu tượng hơn thông qua quá trình convolution với các bộ lọc.
CNNs mang lại mô hình với độ chính xác cao nhờ vào khả năng nhận diện tương tự như cách con người nhận biết các vật thể trong tự nhiên.
Mạng CNN sử dụng 3 ý tưởng cơ bản:
Các trường tiếp nhận cục bộ (local receptive field) trong mạng CNN sử dụng đầu vào là một ảnh Trong mô hình mạng ANN truyền thống, các neuron đầu vào được kết nối vào tầng ảnh, và ma trận lớp đầu vào được gọi là feature map Trọng số xác định các đặc trưng là shared weight, trong khi độ lệch xác định một feature map là shared bias Để nhận dạng ảnh hiệu quả, chúng ta cần nhiều hơn một feature map.
Local receptive field rất hữu ích trong việc phân tách dữ liệu ảnh, cho phép lựa chọn những hình ảnh có giá trị cao nhất để đánh giá phân lớp.
Trọng số chia sé (shared weights and bias)
Để đảm bảo tính nhất quán trong mạng nơ-ron, tất cả các bộ lọc (kernel) phải giống nhau Các nơ-ron trong lớp ẩn đầu tiên sẽ nhận diện chính xác các đặc trưng tương tự tại các vị trí khác nhau trong hình ảnh đầu vào Quá trình chuyển đổi từ lớp đầu vào sang lớp ẩn được gọi là bản đồ đặc trưng (feature map).
Một lớp tích chập (convolutional layer) bao gồm nhiều bản đồ đặc trưng (feature map) khác nhau, mỗi bản đồ này có khả năng phát hiện một loại đặc trưng riêng trong hình ảnh Lợi ích lớn nhất của việc chia sẻ trọng số là giảm thiểu số lượng tham số trong mạng CNN, giúp tối ưu hóa hiệu suất và giảm thiểu khả năng quá khớp Bên cạnh đó, lớp tổng hợp (pooling layer) cũng đóng vai trò quan trọng trong việc giảm kích thước dữ liệu đầu vào.
Lớp pooling thường được áp dụng sau lớp convolutional để đơn giản hóa thông tin đầu ra và giảm số lượng neuron Thủ tục pooling phổ biến nhất là max-pooling, trong đó giá trị lớn nhất được chọn từ vùng đầu vào 2x2.
Quy trình các bước xử lý cho bài toán nhận diện 9
Tiền xử lý dữ liệu (Data Processing) -s- << csccsecserssrsscssrecesree 11 2.2.3 Chia dữ liệu (Data Spilitting) 12 2.2.4 Xây dựng và huấn luyện mô hình (Building the CNN model architecture) 13
Tiền xử lý dữ liệu là bước quan trọng trong bất kỳ dự án học máy nào, đặc biệt với dữ liệu hình ảnh Quá trình này giúp chuẩn bị dữ liệu thô, chuyển đổi chúng thành định dạng phù hợp để đưa vào mô hình học máy, nhằm tối ưu hóa quá trình huấn luyện và cải thiện hiệu suất mô hình.
Mục đích của tiên xử lý
Chuẩn hha hình ảnh về cdng kích thước và định dạng
Cải thiện chất lượng hình ảnh thông qua các kỹ thuật như chuyên đổi sang ảnh xám va can bang histogram
Chuẩn hha dữ liệu để tăng tốc độ huấn luyện và giúp mô hình hội tụ nhanh hơn
Các bước tiền xử ly đữ liệu
Chuyển đổi sang ảnh xám giúp giảm số lượng kênh màu và đơn giản hóa dữ liệu, giữ lại các đặc trưng quan trọng của hình ảnh Kỹ thuật cân bằng histogram cải thiện độ tương phản bằng cách trải đều các mức xám, giúp mô hình học sâu dễ dàng phát hiện và phân biệt các đặc trưng hơn.
Chuẩn hha đữ liệu: Chuẩn hha dữ liệu bằng cách chia cac gia tri diém anh cho
Việc đưa 255 giá trị chung vào khoảng [0, 1] giúp giảm sự chênh lệch về độ lớn giữa các giá trị điểm ảnh, đồng thời cải thiện tốc độ hội tụ của mô hình.
To preprocess an image, first convert it to grayscale using the cv2 library, and then apply histogram equalization to enhance its contrast Finally, normalize the pixel values by dividing the image by 255 to scale them between 0 and 1.
Để chuẩn bị dữ liệu cho mô hình CNN, chúng ta thực hiện các bước tiền xử lý bao gồm chuyển đổi hình ảnh sang ảnh xám, cân bằng histogram và chuẩn hóa Các hàm tiền xử lý này được áp dụng cho toàn bộ tập dữ liệu huấn luyện, tập validation và tập kiểm tra Ngoài ra, kích thước của hình ảnh cũng được thay đổi để phù hợp với yêu cầu đầu vào của mô hình, cụ thể là kích thước 32x32x1.
X_trainznp.anray(1ist(map(preprocessing,X_train))}
X_validation=np.array(list(map(preprocessing,X_validation) )) X_test=np.array(list(map(preprocessing,X test)))
X_train=X_train.reshape(X_train.shape[@],X_train.shape[1],X_train.shepe[2],1)
Retain danioneniealidntiontncenane (italia istiontehonela iexavali ister ontelene |e ằX_validation.shape[2],1) X_test=X_test.reshape(X_test.shape[@],X_test.shape[1],X_test.shape[2],1)
Hình ð Ap dung trén tap die liéu & Thay đổi kích thước dữ liệu
Tăng cường dữ liệu là kỹ thuật sử dụng để tạo ra các biến thể khác nhau của hình ảnh gốc nhằm làm phong phú tập dữ liệu huấn luyện và cải thiện khả năng tổng quát của mô hình Một ví dụ về việc này là sử dụng ImageDataGenerator với các tham số như width_shift_range=0.1, height_shift_range=0.1, zoom_range=0.2, shear_range=0.1 và rotation_range để tạo ra các biến thể hình ảnh Việc áp dụng dataGen.fit(X_train) sẽ giúp mô hình học tốt hơn từ các dữ liệu phong phú này.
Hình 9 Tăng cường đữ liệu 2.2.3 Chia dir ligu (Data Spilitting)
Chia dữ liệu là bước thiết yếu trong quy trình xây dựng mô hình học máy, nhằm đánh giá hiệu suất của mô hình trên các tập dữ liệu chưa được huấn luyện Mục đích chính của việc này là đảm bảo rằng mô hình có khả năng tổng quát và hoạt động hiệu quả trên dữ liệu mới.
Mục đích của việc chia dữ liệu trong học máy bao gồm ba tập dữ liệu chính: Tập huấn luyện (Training Set) được sử dụng để huấn luyện mô hình, giúp mô hình học các đặc trưng và mối quan hệ từ dữ liệu Tập kiểm tra (Test Set) được dùng để đánh giá hiệu suất của mô hình sau khi huấn luyện, đảm bảo rằng mô hình không bị overfitting và có khả năng tổng quát tốt Cuối cùng, Tập xác thực (Validation Set) được sử dụng để điều chỉnh các tham số siêu (hyperparameters) và chọn mô hình tốt nhất trong quá trình huấn luyện.
Để chia dữ liệu hiệu quả, trước tiên bạn cần sử dụng các thư viện cần thiết và định nghĩa các tỷ lệ chia dữ liệu Bước đầu tiên là chia dữ liệu thành tập huấn luyện và tập kiểm tra bằng cách sử dụng hàm "train_test_split", với tỷ lệ 80% cho tập huấn luyện và 20% cho tập kiểm tra Tiếp theo, bạn chia tập huấn luyện thành tập huấn luyện nhẹ hơn và tập xác thực, với 20% của tập huấn luyện dành cho tập xác thực Cuối cùng, hãy kiểm tra kích thước của các tập dữ liệu sau khi chia để đảm bảo tính chính xác.
X_train, X_test, y_train, y test = train_test_split(images, classNo, test size=testRatio)
X_train, X_validation, y train, y validation = train_test_split(X_train, y_ train, test_size=validationRatio)
"”);print(X_train shape,y_train shape)
”,end = ””);print(X_validation shape,y_va1idation.shape print("Test",end = "");print(X_test.shape,y test.shape) print("Data Shapes”)
",end = "");print(X_train.shape,y train.shape) dation",end = "");print(X_validation.shape,y_ validation shape print("Test",end = "");print(X_test.shape,y_test.shape)
Hình 10 Chia dữ liệu & Kiếm tra kích thước tập dữ liệu sau khi chia
2.2.4 Xây dựng và huấn luyện mô hình (Building the CNN model architecture)
Xây dựng và huấn luyện mô hình là bước quan trọng trong quy trình phát triển AI, đòi hỏi sự chuẩn bị kỹ lưỡng từ tiền xử lý dữ liệu, chia tách dữ liệu cho đến việc tăng cường dữ liệu và lựa chọn kiến trúc mô hình phù hợp.
*® Sử dụng các thư viện cân thiệt nhự Keras, TensorFlow, OpenCV, numpy, pandas, và sklearn
This article discusses the implementation of a deep learning model using Keras for image classification It begins by importing essential libraries such as NumPy, Matplotlib, and Keras components, including Sequential models and various layers like Dense, Dropout, and Convolutional layers The article highlights the importance of data preprocessing, utilizing OpenCV for image handling and scikit-learn for splitting the dataset into training and testing subsets It also emphasizes the use of ImageDataGenerator for augmenting the image data to enhance model performance Finally, it mentions the role of pickle for saving trained models and the organization of data using Pandas.
Hinh 11 Cac thw vién được sử dụng ¢ Định nghĩa mô hình CNN: M6 hinh CNN g6m cac lớp tích chập (Conv2D), lớp pooling (MaxPooling2D), lép dropout (Dropout), va cac I6p dense dé dur đoán def mylModel(): model= Sequential() model add((Conv2D(60, (5,5), input_shape=(imageDimesions [0] , imageDimesions[1],1),activation='relu'))) model.add((Conv2D(60, (5,5), activation="relu'))) model add(MaxPooling2D(pool_size=(2,2))) model add((Conv2D(30, (3,3),activation='relu'))) model.add((Conv20(39, (3,3), activation='"relu'))) mode1 add(HaxPooling2D(pool_size=(2,2) ) ) model add(Dropout (9.5) ) model.add(Flatten()) model add(Dense(500,activation='relu’)) model add(Dropout (9.5) ) mode 1 add(Dense(noOfC1asses ,activation= ` softmax ` ) ) model compile(Adam(1r=0.001),loss="categorical_crossentropy',metrics=[ ‘accuracy’ ]) return model
Hình 12 Định nghĩa mô hình
The neural network architecture consists of several layers, beginning with a Conv2D layer that outputs a shape of (28, 28, 60) with 1,560 parameters This is followed by another Conv2D layer, reducing the output to (24, 24, 60) with 90,060 parameters, and a MaxPooling2D layer that further downsamples to (12, 12, 60) Subsequent Conv2D layers decrease the dimensions to (10, 10, 30) and (8, 8, 30) with 16,230 and 8,130 parameters, respectively Another MaxPooling2D layer reduces the output to (4, 4, 30), followed by a Dropout layer to prevent overfitting The output is then flattened to a single dimension of 480 before passing through a Dense layer with 500 units, which has 240,508 parameters, followed by another Dropout layer Finally, the network concludes with a Dense layer that outputs 43 classes, totaling 21,543 parameters.
Total params: 378,023 Trainable params: 378,023 Non-trainable params: @
Hình 13 Kết quả xây dựng mô hình
- _ Huấn luyện mô hình ®- Sau khi huân luyện mô hình với dữ thành quá trình huân luyện mô hình liệu huân luyện và tập xác thực sẽ hoàn
Please use Model.fit, which supports generators
- 141s 202zms/step - loss: 2.5258 - accuracy: @.2969 - val_loss: @.910@ - val_accuracy: 0.7204
- 114s 164ms/step - loss: 1.2834 - accuracy: @.6@61 - val_loss: @.3512 - val_accuracy: 0.9023
- 111s 158ms/step - loss: 0.8756 - accuracy: @.7286 - val_loss: 0.2679 - val_eccuracy: 0.9487 Epoch 4/10
695/695 [==============================] - 109% 157nS/step - loss: 0.6474 - accuracy: @.5803 - val 1oss: @.152@ - vaÌl accurac/: 0.9552 Epoch 5/10
695/685 [~==============================] - 194z 14ỉmz/ztep - 19zs: 0.5545 - accuracy: @.8255 - val_loss: @.1222 - val_accuracy: 0.9644 Epoch 6/18
- 105s 151ms/step - loss: 0.4677 - accuracy: @.8526 - val_loss: 0.0913 - val accuracy: 0.9787
= 104s 15@ms/step - loss: 6.4187 - accuracy: 6.8696 - val_loss: @.0830 - vel_eccuracy: 0.9731
- 103s 149ms/step - loss: 0.3727 - accuracy: @.8834 - val_loss: @.0623 - val_accuracy: 0.9815 Epoch 9/18
695/695 [~ - 106s 152ms/step - loss: 0.3454 - accuracy: @.8922 - val_loss: @.ỉ970 - val_accuracy: 0.9718 Epoch 12/1
695/695 [= - 108s 157ms/step - loss: 0.3262 - accuracy: @.6992 - val_loss: 0.0583 - val_eccuracy: 0.9617
Hình 14 Quá trình huấn luyện mô hình
Đánh giá mô hình (Model Evaluation)
Bước đánh giá mô hình là một giai đoạn thiết yếu trong quá trình phát triển các mô hình học máy Mục tiêu chính của bước này là đo lường hiệu suất của mô hình trên dữ liệu chưa từng thấy, nhằm đảm bảo rằng mô hình có khả năng tổng quát tốt.
Hình 15 Kết quả cho ra của mô hình
Kết quả đánh giá cho thấy mô hình đạt được điểm số kiểm tra là 0.0497, cho thấy mức lỗi thấp trên tập kiểm tra Độ chính xác của mô hình là 98.51%, chỉ ra rằng nó có khả năng phân loại các biến báo hiệu một cách chính xác.
Thiết kế hệ thống 2-e° <2 ©ceEceerseEeereersrsereereceererre 17
Kiến trúc của hệ thống 17 2.3.2 Các thành phần chức năng chính 17
Hệ thống ch thê được chia thành bến phần chính:
Lớp giao diện người ddng (User Interữace Layer)
Lép xu ly nghiép vu (Business Logic Layer)
Lớp quản ly dit ligu (Data Management Layer)
Lép m6 hinh hoc may (Machine Learning Model Layer)
2.3.2 Các thành phần chức năng chính
Lớp giao diện người dùng (User Interface Layer) cung cấp giao diện web cho người dùng tương tác, cho phép tải lên hình ảnh biển báo giao thông và nhận kết quả dự đoán Giao diện ứng dụng tích hợp camera, giúp người dùng dễ dàng tương tác và sử dụng Công nghệ sử dụng bao gồm thư viện như Flask, cung cấp các lớp và hàm để tạo và quản lý ứng dụng web Mô tả chi tiết về giao diện cho phép tải ảnh lên và dự đoán qua website, cùng với tính năng dự đoán bằng camera trong thời gian thực.
- index.html: Trang web chinh hiển thị ứorm đề tải lên hình ảnh
- predict route: Xu lý yêu cầu POST khi người ddng tải lên một hình ảnh và trả về kết quả dự đoán
Lépxu ly nghiép vy (Business Logic Layer) là phần quan trọng trong các hàm dự đoán, chịu trách nhiệm quản lý luồng xử lý chính, bao gồm tiền xử lý hình ảnh và gọi mô hình để dự đoán Đoạn mã sử dụng công nghệ và thư viện như Flask để phát triển ứng dụng web, NumPy và Pandas để xử lý dữ liệu, cùng với các thư viện từ scikit-learn để xây dựng mô hình học máy.
Hàm model_prediet trong app.py đảm nhận vai trò tiền xử lý hình ảnh tải lên, thực hiện dự đoán kết quả thông qua các mô hình học máy và trả về kết quả dự đoán một cách chính xác.
Lớp quản lý dữ liệu (Data Management Layer) đóng vai trò quan trọng trong việc quản lý và xử lý dữ liệu, bao gồm các bước tiền xử lý như chuyển đổi ảnh sang định dạng xám, cân bằng histogram và chuẩn hóa dữ liệu Để thực hiện các tác vụ này, thư viện pandas được sử dụng để xử lý dữ liệu một cách hiệu quả.
- preprocessing functions (app.py): Cac ham grayscale, equalize, va preprocessing dé xu ly hinh ảnh trước khi đưa vào mô hình
Lớp m6 hình học máy (Machine Learning Model Layer) là phần chịu trách nhiệm xây dựng, huấn luyện và lưu trữ mô hình học máy, đồng thời thực hiện dự đoán dựa trên mô hình đã được huấn luyện.
Lưu đồ thuật toán (Flowchart) 18 CHƯƠNG3_ TRIỄN KHAI VÀ DEMO CHƯƠNG TRÌNH
- _ Xây dựng mô hình: Định nghĩa kiến trúc mô hình CNN sử dụng các lớp Conv2D, MaxPooling2D, Dropout, Flatten, va Dense
- _ Huấn luyện mô hình: Huấn luyện mô hình trên đữ liệu huấn luyện và kiểm tra độ chính xác trên đữ liệu xác thực
- _ Lưu trữ mô hình: Lưu mô hình đã huấn luyện vào ứile “model.hŠ” thuật toan (Flowchart)
Bat dau: Khoi dong hé thong
Nhận đữ liệu đầu vào:
Từ giao diện web: Nhận hình ảnh được tải lên bởi người ddng thông qua giao diện web
Từ camera: Nhận ảnh trực tiếp theo thời eian thực thông qua camera của thiết bị
: Tiền xử lý dữ liệu:
Chuyên đôi hình ảnh sang thang d6 xam (grayscale)
: Dự đoàn bằng mô hình:
Tải mô hình đã huấn luyện (model.h5)
- _ Sử dụng mô hình để dự đoán lớp biển báo giao thong tir hinh anh da qua tiền xử lý
Bước 5: Hiên thị kết quả:
- _ Giao diện website: Hiền thị kết quả dự đoán trén trang web
- _ Giao diện camera: Hiên thị kết quả dự đoán ghe bên trên cua man hình Bước 6: Kết thúc: Dừng hệ thống khi hoàn tất dự đoán
- Vẽ lưu đồ thuật toán
Nhập hình ảnh tải lên từ người dùng
Dự đoán lớp biển báo bằng mô hình
Hiển thị kết quả dự đoán —
Hiển thị kết quả trên trạng Hiển thị kết quả trên màn web hình camera
Hình 16 Sơ đồ mô tả lưu đô thuật toán
CHUONG3 ~~ TRIEN KHAI VA DEMO CHƯƠNG TRÌNH
Dự án “Xây dựng ứng dụng nhận diện biên báo giao thông” của nhhm chúng em ch cấu trúc như sau:
Dataset ứolder: Là ứolder chứa tất cả ảnh làm đữ liệu cho dự án (hơn 30.000 ảnh), được chia thành 42 ứolder nhợ tương ứng với 42 loại biển báo giao thông
Thư mục Static và Templates chứa các tệp HTML, CSS và JavaScript để xây dựng giao diện người dùng Tệp app.py đảm nhận vai trò quan trọng trong việc khởi tạo ứng dụng Flask mới, tải mô hình học máy và định nghĩa các route cho ứng dụng Tệp labels.csv là một tệp Excel chứa thông tin đánh nhãn các loại biển báo giao thông.
Model.h5 là định dạng dữ liệu phân cấp (HDF) phổ biến, được sử dụng để lưu trữ khối lượng lớn dữ liệu dưới dạng mảng nhiều chiều Định dạng này chủ yếu phục vụ cho việc lưu trữ dữ liệu khoa học, giúp tổ chức thông tin một cách hiệu quả để truy xuất và phân tích nhanh chóng.
Test.py là một ứng dụng sử dụng webcam để nhận diện biển báo giao thông trong thời gian thực Ứng dụng này bao gồm các chức năng như khởi tạo webcam, định nghĩa hàm ảnh xạ lớp biển báo, đọc và xử lý từng khung hình, cũng như hiển thị kết quả lên màn hình.
Trairtic_ Sign Recognition.ipynb: 14 lép chinh dé xu ly quá trình training cua m6 hinh v TRAFFIC SIGN REC [3 FF O @
Hình 17 Cấu trúc dự án
3.2 Demo chương trình Đây là giao diện chính của chương trình chạy trên nền web app:
Traffic Sign Recognition one OOS
Nhận đữ liệu đầu vào từ người ddng:
Sau khi hoàn tất các bước tiền xử lý dữ liệu, mô hình đã được huấn luyện sẽ dự đoán lớp biển báo và trả về kết quả dự đoán cho người dùng.
Traffic Sign Recognition one woe
Hình 20 Kết quả nhận diện trên website
Nhận diện bằng camera trong thoi gian thyc, két quả nhận diện được sẽ được hiển thị ở ehc trên cdng bên trái của chương trình
- Tên biển báo (thuộc lớp biến báo bào trong 42 lớp biển báo)
- _ Xác suât dự đoán chính xác
Hinh 21 Két qua nhan dién bang camera
Để nâng cao độ chính xác và hiệu quả của mô hình phát hiện ảnh biên báo, cần cải thiện các yếu tố như tăng cường thu thập dữ liệu và áp dụng các phương pháp máy học tiên tiến hơn Các hướng nghiên cứu tiếp theo đã được đề xuất nhằm cải thiện chất lượng bộ huấn luyện.
Mỡ rộng cơ sở dữ liệu biển báo giao thông
Mở rộng nhận dạng nhhm biển báo nghiên cứu
Nâng cấp và hoàn thiện hệ thống nhằm phát triển khả năng nhận dạng và cung cấp cảnh báo tức thời cho người tham gia giao thông trong một chương trình toàn diện.
KET LUAN VA HUONG PHAT TRIEN Kết luận về đề tài
- Dưới sự tiễn bộ không ngừng của khoa học dữ liệu và trí tuệ nhân tạo, đề tài
Xây dựng ứng dụng nhận diện biển báo giao thông là một nghiên cứu quan trọng, giúp hiểu sâu hơn về lĩnh vực giao thông đầy thách thức Kết quả đánh giá của đề tài cho thấy việc áp dụng các phương pháp phân tích dữ liệu và xây dựng mô hình dự đoán đã giúp tiến xa hơn trong việc định hình và nhận diện biển báo giao thông.
Mô hình dự đoán đã chứng minh độ chính xác cao trong việc nhận diện các loại biển báo giao thông khác nhau Kết quả dự đoán này không chỉ khẳng định tính hiệu quả mà còn mở ra nhiều cơ hội ứng dụng trong việc tối ưu hóa các ứng dụng hỗ trợ giao thông.
Để nâng cao chất lượng và khai thác tối đa tiềm năng của đề tài, cần tiếp tục nghiên cứu và phát triển theo những hướng đi mới Việc tối ưu hóa các mô hình dự đoán, mở rộng phạm vi dữ liệu và thực hiện các thử nghiệm thực tiễn sẽ là những bước đi quan trọng tiếp theo.
Nội dung của đề tài đã đạt được:
Đề tài đã đạt được những thành tựu quan trọng trong việc ứng dụng khoa học dữ liệu để xây dựng mô hình máy học nhận diện giao thông, mở ra triển vọng mới cho lĩnh vực này và đóng góp vào việc làm giàu kiến thức cũng như ứng dụng của khoa học dữ liệu trong giao thông.
Để nâng cao độ chính xác và hiệu quả của mô hình, cần cải thiện một số yếu tố quan trọng, bao gồm việc tăng cường thu thập dữ liệu và áp dụng các phương pháp máy học tiên tiến hơn Các hướng nghiên cứu tiếp theo đã được đề xuất nhằm đạt được mục tiêu này.
- Cai tiễn chất lượng bộ huấn luyện phát hiện ảnh biển báo
- _ Mở rộng cơ sở đữ liệu biến báo giao thông
- _ Mở rộng nhận dạng nhhm biển báo nghiên cứu
Nâng cấp và hoàn thiện khả năng của hệ thống nhằm phát triển một hệ thống nhận dạng và cảnh báo tức thời cho người tham gia giao thông trong một chương trình toàn diện.
Demo chương trình 21 3.3 Hướng phát triển
Đây là giao diện chính của chương trình chạy trên nền web app:
Traffic Sign Recognition one OOS
Nhận đữ liệu đầu vào từ người ddng:
Sau khi hoàn thành các bước tiền xử lý dữ liệu, mô hình đã được huấn luyện sẽ dự đoán lớp biển báo và trả về kết quả cho người dùng.
Traffic Sign Recognition one woe
Hình 20 Kết quả nhận diện trên website
Nhận diện bằng camera trong thoi gian thyc, két quả nhận diện được sẽ được hiển thị ở ehc trên cdng bên trái của chương trình
- Tên biển báo (thuộc lớp biến báo bào trong 42 lớp biển báo)
- _ Xác suât dự đoán chính xác
Hinh 21 Két qua nhan dién bang camera
Để nâng cao độ chính xác và hiệu quả của mô hình, cần cải thiện các yếu tố như tăng cường thu thập dữ liệu và áp dụng các phương pháp máy học tiên tiến hơn Các hướng nghiên cứu tiếp theo cũng đã được đề xuất nhằm cải thiện chất lượng bộ huấn luyện cho việc phát hiện ảnh biên báo.
Mỡ rộng cơ sở dữ liệu biển báo giao thông
Mở rộng nhận dạng nhhm biển báo nghiên cứu
Nâng cấp và hoàn thiện hệ thống nhằm phát triển khả năng nhận dạng và cung cấp cảnh báo tức thời cho người tham gia giao thông trong một chương trình toàn diện.
KET LUAN VA HUONG PHAT TRIEN Kết luận về đề tài
- Dưới sự tiễn bộ không ngừng của khoa học dữ liệu và trí tuệ nhân tạo, đề tài
Việc "Xây dựng ứng dụng nhận diện biển báo giao thông" không chỉ là nghiên cứu công nghệ mà còn là bước tiến quan trọng trong việc hiểu sâu về lĩnh vực giao thông phức tạp Kết quả đánh giá tích cực từ đề tài này đã chứng minh rằng, bằng cách áp dụng các phương pháp phân tích dữ liệu và xây dựng mô hình dự đoán, chúng ta có thể tiến xa hơn trong việc định hình và nhận diện biển báo giao thông.
Các mô hình dự đoán đã chứng minh tính chính xác cao trong việc nhận diện các loại biển báo giao thông khác nhau Khả năng ứng dụng của những kết quả này mở ra nhiều cơ hội để tối ưu hóa các ứng dụng hỗ trợ giao thông.
Để nâng cao chất lượng và khai thác tối đa tiềm năng của đề tài, cần tiếp tục nghiên cứu và phát triển theo những hướng đi mới Việc tối ưu hóa các mô hình dự đoán, mở rộng phạm vi dữ liệu và tiến hành thử nghiệm thực tiễn sẽ là những bước đi quan trọng tiếp theo.
Nội dung của đề tài đã đạt được:
Đề tài đã đạt được nhiều thành tựu quan trọng trong việc ứng dụng khoa học dữ liệu để xây dựng mô hình máy học nhận diện giao thông, mở ra triển vọng mới cho lĩnh vực này và góp phần làm phong phú thêm kiến thức cũng như ứng dụng của khoa học dữ liệu trong giao thông.
Để nâng cao độ chính xác và hiệu quả của mô hình, cần cải thiện các yếu tố như tăng cường thu thập dữ liệu và áp dụng các phương pháp máy học tiên tiến hơn Các hướng nghiên cứu tiếp theo đã được đề xuất nhằm đạt được những mục tiêu này.
- Cai tiễn chất lượng bộ huấn luyện phát hiện ảnh biển báo
- _ Mở rộng cơ sở đữ liệu biến báo giao thông
- _ Mở rộng nhận dạng nhhm biển báo nghiên cứu
Nâng cấp và hoàn thiện hệ thống nhằm phát triển một hệ thống nhận dạng hiệu quả, cung cấp cảnh báo tức thời cho người tham gia giao thông trong khuôn khổ một chương trình toàn diện.