• WWWWWWWWWWWW
    了解作者
  • matlab
    开发工具
  • 1KB
    文件大小
  • zip
    文件格式
  • 0
    收藏次数
  • 1 积分
    下载积分
  • 1
    下载次数
  • 2021-04-15 21:04
    上传日期
基于小波变换和BP神经网络的路牌信息检测方法
main.zip
  • main.m
    2.4KB
内容介绍
clear all; close all %%%%建立bp神经网络%%%%%% setdemorandstream(pi); m=10; n=10; N=10; I0= zeros(N,m*n); dis = dir('富\*.jpg'); for i = 1:length(dis) path = strcat('富\',dis(i).name); I0(i,:)=pretreatment(imread(path)); end I1= zeros(10,m*n); dis = dir('誉\*.jpg'); for i = 1:length(dis) path = strcat('誉\',dis(i).name); I1(i,:)=pretreatment(imread(path)); end I2= zeros(10,m*n); dis = dir('景\*.jpg'); for i = 1:length(dis) path = strcat('景\',dis(i).name); I2(i,:)=pretreatment(imread(path)); end I3= zeros(10,m*n); dis = dir('海\*.jpg'); for i = 1:length(dis) path = strcat('海\',dis(i).name); I3(i,:)=pretreatment(imread(path)); end I4= zeros(10,m*n); dis = dir('口\*.jpg'); for i = 1:length(dis) path = strcat('口\',dis(i).name); I4(i,:)=pretreatment(imread(path)); end I5= zeros(10,m*n); dis = dir('路\*.jpg'); for i = 1:length(dis) path = strcat('路\',dis(i).name); I5(i,:)=pretreatment(imread(path)); end %输入样本%%%%%%%%% P=[I0',I1',I2',I3',I4',I5'];%P为输出样本 T=eye(60,60);%6阶单位矩阵%%bp神经网络参数设置%%% net=newff(minmax(P),[30,60],{'logsig','logsig','logsig'},'traingdx'); net.inputWeights{1,1}.initFcn ='randnr'; net.layerWeights{2,1}.initFcn ='randnr'; net.trainparam.epochs=5000;%最大收敛次数 net.trainparam.show=20;%显示间隔 net.trainparam.lr=0.00000001; %学习效率 net.trainparam.goal=0.000000000000001; net.trainparam.max_fail=5;%最大确认失败次数 net=init(net); %%%训练样本%%%% [net,tr]=train(net,P,T); %%%%%%%测试%%%%%%%%% %%%%%%%%%%%%%%%%%%%利用训练好的BP网络进行路牌识别%%%%%%%%%%%%% I=imread('富景路 (7).jpg'); %可以选择输入不同样本 dw=location(I);%路牌定位 [PIN0,PIN1,PIN2]=StringSplit(dw);%字符分割及处理 %%%%%%%%%%%测试字符,得到识别数值%%%% PIN0=pretreatment(PIN0); PIN1=pretreatment(PIN1); PIN2=pretreatment(PIN2); P0=[PIN0',PIN1',PIN2']; for i=1:3 T0= sim(net ,P0(:,i)); T1 = compet (T0) ; d =floor(find(T1 == 1)/10) if (d == 0) str='富'; elseif (d == 1) str='誉'; elseif (d == 2) str='景'; elseif (d == 3) str='海'; elseif (d == 4) str='口'; elseif (d == 5) str='路'; elseif (d == 6) str='路'; else str=num2str(d); end switch i case 1 str0=str; case 2 str1=str; case 3 str2=str; end end %%%%%%%显示定位后的分割出的路牌彩图,%%% %%%%%%识别结果以标题形式显示在图上%%% s=strcat(str0,str1,str2); figure(); imshow(dw),title(s);
评论
    相关推荐
    • led-dot-matrix-.rar
      对于led点阵显示的设计,对于led点阵原理以及led点阵滚动显示的原理设计包括设计程序流程图以及原理图
    • pdcnmb.zip
      用C++写的一个游戏程序,大家快来看看,共同进步哈
    • xinjingling.zip
      一个RPG游戏,是作者树之根在暑假写的。可以下载来玩玩,有源码。
    • matlab绘图的形状代码-Driver-Assistance-System:驾驶员辅助系统
      matlab绘图的形状代码驾驶员辅助系统 1)摘要: ...在造成各种事故的各种原因中,有一些很大的原因是路牌的遗忘,路牌的障碍和驾驶员的打扰。 诸如交通标志识别(TSI)之类的驾驶员辅助系统(DAS)
    • GaussDB_100_1.0.1-DATABASE-REDHAT-64bit.tar.gz
      guassdb100在redhat上安装包,单机部署的包,安装步骤请看我的文中介绍,经过大量实验搭建总结出来的文档
    • SIM800C_MQTT.rar
      使用SIM800C模块,使用MQTT协议,连接中国移动onenet平台,能实现数据的订阅、发布、存储等
    • 卷积神经网络
      这是卷积神经网络的一个实际用例,已经调试好了,能够在matlab上成功运行,适合从事卷积神经网络(CNN)研究的人员学习使用。
    • android从bootloader到launcher启动流程整理
      讲述android 开机流程 从boot rom---bootloader---init--zygote---systemserver---ams 并附上自己整理的每个流程的流程图 ,清晰熟悉android 启动流程
    • 分数阶混沌系统:分数阶混沌系统的数值解。-matlab开发
      该工具箱包含可用于模拟一些著名的分数阶混沌系统的函数,例如: - 陈的系统, - Arneodo的系统, - Genesio-Tesi 的系统, - 洛伦兹系统, - 牛顿-莱普尼克系统, - 罗斯勒的系统, - Lotka-Volterra系统, - 达芬的系统, - 范德波尔的振荡器, -伏打的系统- 陆氏系统, - 刘的系统, - Chua的系统, - 金融系统, - 3 细胞 CNN。 这些函数以数值方式计算描述混沌系统的分数阶非线性微分方程的解。 每个函数返回总模拟时间的状态轨迹(吸引器)。 更多详情请看书: Ivo Petras,分数阶非线性系统:建模、分析和仿真,Springer,系列:非线性物理科学,2011,ISBN 978-3-642-18100-9。 http://www.springer.com/engineering/control/book/978-3-
    • matlabpam代码-dsp-library:用于光通信的MATLABDSP函数库
      matlab pam代码 DSP库 该项目包含几种不同的功能,可将DSP算法应用于光通信。 这些功能适用于相干和非相干(PAM,DMT)光通信。 大多数功能是相互独立的。 因此,该代码中的功能可以轻松使用,并与其他DSP功能结合使用。 用法 功能列表以及简短说明在文件中。 输入和输出参数的描述在每个函数的标题中。 讯号 通常,输入(和输出)信号在第一维度上具有时间(例如,列向量),而第二维度用于一次管理多个信号(例如,不同的极化,不同的参数等)。 之所以选择这种约定,是因为MATLAB通过将列保留在内存的连续部分中来存储矩阵,因此,这种约定比其他方法(行向量)要快。 参数 大多数功能使用参数结构作为输入参数。 函数中使用的参数的描述通常在标头中,而coherent-dsp函数的默认参数在文件中。 参考 执照 此代码在下发布。