【车牌识别】matlab 基于bp神经网络的车牌图像识别【源码42期】

一、简介

matlab 基于bp神经网络的车牌图像识别,本文的图像预处理模块是将图像灰度化和用Canny算子进行边缘检测,汽车牌照定位依据它的颜色特征,使用MATLAB中的Radon函数和Imrotate函数来进行车牌矫正;分割字符时,需要先找到连续的文字块,然后根据长度大小来确定是否分割,假如所找到的连续文字块的长度大于阈值,那么就表示可以对此文字块进行分割。并且为了能对车牌上的字符进行正确的识别,本文将采用BP神经网络算法。

二、部分源码

function pushbutton2_Callback(hObject, eventdata, handles)
image =  handles.I; 
gray = rgb2gray(image);     % 图像灰度化
axes(handles.axes2);
imshow(gray);

% --- Executes on button press in pushbutton3.
function pushbutton3_Callback(hObject, eventdata, handles)
image =  handles.I; 
gray = rgb2gray(image);
new_gray = histeq(gray);  % 直方图均衡 ,图像增强
axes(handles.axes3);
imshow(new_gray);
function pushbutton4_Callback(hObject, eventdata, handles)
image =  handles.I; 
gray = rgb2gray(image);     
new_gray = histeq(gray);  % 直方图均衡 ,图像增强
if size(new_gray,1)>1000
    new_gray_1 = imresize(new_gray,0.1);
else
    new_gray_1  =new_gray;
end
bw  = edge(new_gray_1,'canny');                    
axes(handles.axes4);
imshow(bw);
function pushbutton5_Callback(hObject, eventdata, handles)
%% chepai dingwei
Image = handles.I;

 DI = Image(:,:,3);

GI = (Image(:,:,1)<100 & Image(:,:,2)<150 & Image(:,:,3)>120 ...
     & abs(double(Image(:,:,2))-double(Image(:,:,3)))>30);      

axes(handles.axes5);
imshow(GI);
handles.GI = GI;
guidata(hObject, handles);
function pushbutton6_Callback(hObject, eventdata, handles)
d = handles.GI;

se = ones(40);  % 腐蚀膨胀模版

d = imdilate(d,se);% 再做膨胀运算 
d = imerode(d,se); % 先做腐蚀运算
% 先膨胀后腐蚀的过程称为开运算。用来填充物体内细小空洞、连接邻近物体、平滑其边界的同时并不明显改变其面积。
d = bwareaopen(d,100); % 移除小对象 小区域肯定是噪声
 
STATS = regionprops(d);%统计被标记的区域的面积分布,显示区域总数
area = [];

for i = 1:size(STATS,1)
    area = [area;STATS(i).Area];
end
[value,index] = max(area); 

Bound = round(STATS(index).BoundingBox);
 
xmin = Bound(2);
xmax = Bound(2)+Bound(4);
ymin = Bound(1);
ymax = Bound(1)+Bound(3);

II = handles.I(xmin:xmax,ymin:ymax,:);
 
axes(handles.axes6);
imshow(II);

handles.Divice = II;
guidata(hObject, handles);

三、运行结果

四、matlab版本

MATLAB R2019a

五、学习与交流

文中不足之处请大家多多指教,学习与交流可以联系企鹅:3752243968
文中部分源码仅供参考,若需要全部代码可以私信

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值