当前位置:网站首页>[traffic sign recognition] Based on Matlab GUI YCbCr feature extraction +bp neural network traffic sign recognition [including Matlab source code 1869]
[traffic sign recognition] Based on Matlab GUI YCbCr feature extraction +bp neural network traffic sign recognition [including Matlab source code 1869]
2022-06-11 01:58:00 【Poseidon light】
One 、BP Introduction to neural network traffic sign recognition
1 introduction (Introduction)
Traffic sign recognition is a research hotspot in the field of image processing and pattern recognition , It is widely used in driverless cars 、 Vehicle navigation and other fields , It has strong practical application value . Although the graphic structure of traffic signs is relatively simple , But to recognize traffic signs in natural environment , Facing obstruction 、 noise 、 Light variability 、 Shape distortion and other serious challenges , Therefore, traffic sign recognition is one of the key research contents in the field of pattern recognition .
2 A brief introduction to machine learning methods (Three kinds of machine learning methods)
2.1 BP neural network
BP Neural network is a multilayer feedforward network trained by error back propagation learning algorithm , Be able to learn and store a large amount of input — Output schema mapping , It is one of the most widely used neural network models .
BP The learning process of neural network consists of two processes: the forward propagation of signal and the back propagation of error . The direction of forward propagation is the input layer → Cryptic layer → Output layer , The state of each layer of neurons only affects the next layer of neurons , Get the response at the output layer , If the actual output does not match the expected output , Then enter the error back propagation stage . The error back propagation stage is back propagation from the output layer to the input layer through the hidden layer , And modify the weight layer by layer , Continuously improve the accuracy . The alternation of the two processes , Is that the network error function reaches the minimum value , So as to complete the process of information extraction and memory .
3 BP Neural network recognition of traffic signs
(1) Image preprocessing
The purpose of preprocessing is to improve the image contrast , Enhance useful information . The preprocessing operation of this experiment is gray conversion ( Adaptive threshold method ) And binarization .
(2) feature extraction
Feature extraction is to obtain the low dimensional features that can best reflect the nature of the sample by reducing the dimension . This experiment uses coarse mesh feature extraction . First, the nearest interpolation method is used to scale the sample to 70×50, Then divide the sample into 10×10 The size of the grid , Count the pixel values in each grid , formation 35 The eigenvectors of the dimensions .
(3) BP Design of neural network
BP The algorithm can be applied to feedforward networks with four or more layers , But it is easier to fall into the local minimum without convergence , Therefore, three layers are selected BP The Internet , At the same time, the training method with momentum factor is selected , Avoid falling into a local minimum .
For the choice of excitation function , Logarithm is usually used S function 、 Hyperbolic tangent S Functions and linear functions .MATLAB Three transfer functions corresponding to the above excitation functions are provided in :logsog function 、tansig Functions and linearity purelin function . In view of the experimental output of this paper , choose tansig function .
so far , The choice of the number of hidden layer nodes cannot be solved by a complete theory , However, it is necessary to make the neural network structure as compact as possible while meeting the accuracy requirements , That is to reduce the number of hidden layer nodes as much as possible . In general , The number of hidden layer nodes is determined according to the specific training results .
For the selection of training function , In this paper traingdx function , It is an adaptive learning rate method based on momentum method , Automatically adjust the learning rate , It can effectively shorten the training time .
Set the maximum number of iterations for this experiment 1000, Expect goals 1e-5, Momentum factor 0.95.
Two 、 Partial source code
function varargout = Traffic_Iden(varargin)
% TRAFFIC_IDEN MATLAB code for Traffic_Iden.fig
% TRAFFIC_IDEN, by itself, creates a new TRAFFIC_IDEN or raises the existing
% singleton*.
%
% H = TRAFFIC_IDEN returns the handle to a new TRAFFIC_IDEN or the handle to
% the existing singleton*.
%
% TRAFFIC_IDEN('CALLBACK',hObject,eventData,handles,...) calls the local
% function named CALLBACK in TRAFFIC_IDEN.M with the given input arguments.
%
% TRAFFIC_IDEN('Property','Value',...) creates a new TRAFFIC_IDEN or raises the
% existing singleton*. Starting from the left, property value pairs are
% applied to the GUI before Traffic_Iden_OpeningFcn gets called. An
% unrecognized property name or invalid value makes property application
% stop. All inputs are passed to Traffic_Iden_OpeningFcn via varargin.
%
% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one
% instance to run (singleton)".
%
% See also: GUIDE, GUIDATA, GUIHANDLES
% Edit the above text to modify the response to help Traffic_Iden
% Begin initialization code - DO NOT EDIT
gui_Singleton = 1;
gui_State = struct('gui_Name', mfilename, ...
'gui_Singleton', gui_Singleton, ...
'gui_OpeningFcn', @Traffic_Iden_OpeningFcn, ...
'gui_OutputFcn', @Traffic_Iden_OutputFcn, ...
'gui_LayoutFcn', [] , ...
'gui_Callback', []);
if nargin && ischar(varargin{
1})
gui_State.gui_Callback = str2func(varargin{
1});
end
if nargout
[varargout{
1:nargout}] = gui_mainfcn(gui_State, varargin{
:});
else
gui_mainfcn(gui_State, varargin{
:});
end
% End initialization code - DO NOT EDIT
3、 ... and 、 Running results


Four 、matlab Edition and references
1 matlab edition
2014a
2 reference
[1] Cai Limei .MATLAB The image processing —— theory 、 Algorithm and example analysis [M]. tsinghua university press ,2020.
[2] Yang Dan , Zhao Haibin , Long Zhe .MATLAB Detailed explanation of image processing examples [M]. tsinghua university press ,2013.
[3] Zhou pin .MATLAB Image processing and graphical user interface design [M]. tsinghua university press ,2013.
[4] Liu Chenglong . Master MATLAB The image processing [M]. tsinghua university press ,2015.
[5] Zhang Xingguo , Liu Xiaolei , Li Jing , Wang Huandong .BP Real time detection and recognition of speed limit traffic signs based on neural network [J]. Journal of Xi'an University of Electronic Science and Technology . 2018,45(05)
[6] Zhong Ling , Yu Yajie , Zhangzhijia , Jinyongchao . Comparison and analysis of traffic sign recognition algorithms [J]. Software Engineering . 2016,19(01)
边栏推荐
- Some records of China open SSL compilation
- Dialog AlertDialog 、SimpleDialog、showModalBottomSheet、showToast Flutter 自定义 Dialog
- 1.4px4 program download
- 小鱼儿的处理
- Within one month, the broadcasting volume has increased by 9million, and station B has three traffic growth passwords!
- 【音乐】基于matlab演奏《青花瓷》【含Matlab源码 1873期】
- 1.5 Px4 vehicle selection
- 晚餐阿帮的手艺
- The problem of slow response of cs-3120 actuator during use
- 基于Gin、Gorm实现的在线练习系统之项目梳理
猜你喜欢

爱思唯尔---Elseviewer---预印本在线发表通知

Deep exploration of functions with indefinite parameters in C language

2021-2-26 compilation of programming language knowledge points
![[leetcode] a group of K flipped linked lists](/img/38/0b3cf215f49489bb5c3293471a818a.jpg)
[leetcode] a group of K flipped linked lists

视频压缩数据集TVD

Byte Beijing 23K and pinduoduo Shanghai 28K, how should I choose?

Win11怎么更改管理员头像?Win11更换管理员头像的方法

Win11系统使用DISM命令备份驱动程序的方法

flutter 状态管理

ACM教程 - 堆排序
随机推荐
面试官:介绍一下你简历中的项目,细讲一点,附项目实战
Leetcode 2054 two best non overlapping events
MATLAB数字运算函数笔记
Leetcode 1248 count number of nice subarrays
flutter_ Swiper carousel map plug-in
What if ROS lacks a package
Exj shaped children will be satisfied with mbtxe due to disconnection
Kubernetes binary installation (v1.20.15) (VII) plug a work node
【MATLAB】图像压缩编码(DCT、RLE)
2021-2-26编程语言知识点整理
[leetcode] intersecting linked list
kubernetes 二进制安装(v1.20.15)(七)加塞一个工作节点
[leetcode] breadth first search level traversal general disassembly template
Task02: basic use of database (MySQL)
Dialog AlertDialog 、SimpleDialog、showModalBottomSheet、showToast Flutter 自定义 Dialog
LeetCode 1010 Pairs of Songs With Total Durations Divisible by 60 (hash)
卡尔曼滤波(KF)、拓展卡尔曼滤波(EKF)推导
晚餐阿帮的手艺
【音乐】基于matlab演奏《天空之城》【含Matlab源码 1874期】
1.4px4 program download