当前位置:网站首页>[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)
边栏推荐
- Kubernetes binary installation (v1.20.15) (VII) plug a work node
- [matlab] image transform (Fourier transform, discrete cosine transform)
- Win11系统使用DISM命令备份驱动程序的方法
- Threejs: pit encountered in drawing Bessel curve with two-point coordinates
- 2021-7-18 ROS notes XML language related
- 中国各省份省会的坐标
- Deep exploration of functions with indefinite parameters in C language
- 2021-07-18 ROS notes - basics and communication
- [leetcode] ordered linked list transformation binary search tree
- kubernetes 二进制安装(v1.20.15)(七)加塞一个工作节点
猜你喜欢

Loki learning summary (1) -- the best choice of Loki small and medium-sized project log system

關於概率統計中的排列組合
![[leetcode] same tree + symmetric binary tree](/img/e5/40803ce66756c03737aa8991f7ec92.jpg)
[leetcode] same tree + symmetric binary tree

视频压缩数据集TVD

Flutter status management

Well paid test development programmers, why are you leaving? Kill each other with products until the sky is dark

2.0 detailed explanation of ROS and Px4 communication

Leetcode linked list queue stack problem

CLIP论文详解

1.3 introduction to ROS UAV
随机推荐
Well paid test development programmers, why are you leaving? Kill each other with products until the sky is dark
Leetcode 1574 shortest subarray to be removed to make array sorted
2021-07-18 ROS笔记-基础和通讯
1.2. Ros+px4 preliminary basic knowledge
从解读 BDC 自动生成的代码谈起,讲解 SAPGUI 的程序组成部分试读版
LeetCode 1749 Maximum Absolute Sum of Any Subarray (dp)
【音乐】基于matlab演奏《青花瓷》【含Matlab源码 1873期】
【HaaS Hands-On】全新视频节目上线 创意案例我们一起上手做 第一期E01: 物联网工程师 和你一起上手做遥控机械臂
Lazy singleton mode
2022.6.6-----leetcode. seven hundred and thirty-two
[leetcode] balanced binary tree
Xpath Injection
1.7 calibration of Px4 remote controller
1.4px4 program download
Sparrowrecsys recurrence record
[matlab] basic image operation (point operation, arithmetic operation, scaling and rotation)
[matlab] image restoration
Leetcode 665 non decreasing array (greedy)
Leetcode 2054 two best non overlapping events
LeetCode 1010 Pairs of Songs With Total Durations Divisible by 60 (hash)