车牌定位matlab程序:通过hsv彩色分割方式定位车牌
来源:互联网 发布:怎么改淘宝网店名称 编辑:程序博客网 时间:2024/04/30 06:55
最近看了《基于数字图像处理的车牌识别研究》这篇论文,对车牌识别知识讲的很仔细,推荐。
1.(摘自《基于数字图像处理的车牌识别研究》)
通过对大量车牌图像的分析,可以发现对于具有某种目标色的像素,可以直接通过对H、s、v三分量设定一个范围来把它们过滤出来,无需进行较复杂的色彩距离计算, 这样可以在色彩分割时节省大量的时间。这种过滤对蓝色和黄色车牌特别有效,但对于黑色和白色的过滤效果不是很理想。这是因为对于纯色的黑色和白色,它们的色调和饱和度没有意义,所以和其它颜色相比缺少了两个过虑指标。
根据这篇论文所讲的步骤想要写程序,开始居然是无从下手。通过参考各种车牌识别matlab程序,才写出来第一个程序。此程序是针对蓝色车牌的识别,识别效果还不错,通过HSV颜色空间分割确实可行。
通过先验知识,汽车车牌的HSV值可由下表确定:
2.蓝色车牌HSV彩色分割定位Matlab程序:
clear all;clc;[Im,Path]=uigetfile('*jpg','选择图片');Image=imread([Path,Im]);Image=im2double(Image);s=size(Image,2)I=rgb2hsv(Image);[y,x,z]=size(I);Blue_y = zeros(y, 1);p=[0.56 0.71 0.4 1 0.3 1 0];for i = 1 : y for j = 1 : x hij = I(i, j, 1); sij = I(i, j, 2); vij = I(i, j, 3); if (hij>=p(1) && hij<=p(2)) &&( sij >=p(3)&& sij<=p(4))&&... (vij>=p(5)&&vij<=p(6)) Blue_y(i, 1) = Blue_y(i, 1) + 1; end endend[~, MaxY] = max(Blue_y);Th = p(7);PY1 = MaxY;while ((Blue_y(PY1,1)>Th) && (PY1>0)) PY1 = PY1 - 1;endPY2 = MaxY;while ((Blue_y(PY2,1)>Th) && (PY2<y)) PY2 = PY2 + 1;endPY1 = PY1 - 2;PY2 = PY2 + 2;if PY1 < 1 PY1 = 1;endif PY2 > y PY2 = y;endIt=Image(PY1:PY2,:,:);subplot(231),imshow(It);IY = I(PY1:PY2, :, :);subplot(232),imshow(IY);I2=im2bw(IY,0.5);subplot(233),imshow(I2);[y1,x1,z1]=size(IY);Blue_x=zeros(1,x1);for j = 1 : x1 for i = 1 : y1 hij = IY(i, j, 1); sij = IY(i, j, 2); vij = IY(i, j, 3); if (hij>=p(1) && hij<=p(2)) &&( sij >=p(3)&& sij<=p(4))&&... (vij>=p(5)&&vij<=p(6)) Blue_x(1, j) = Blue_x(1, j) + 1; % bw1(i, j) = 1; end endendPY1,PY2[~, MaxX] = max(Blue_x);Th = p(7);PX1 = MaxX;while ((Blue_x(1,PX1)>Th) && (PX1>0)) PX1 = PX1 - 1;endPX2 = MaxX;while ((Blue_x(1,PX2)>Th) && (PX2<x1)) PX2 = PX2 + 1;endIta=Image(PY1:PY2,PX1:PX2,:);subplot(234),imshow(Ita);IX = I(PY1:PY2, PX1:PX2, :);subplot(235),imshow(IX);I3=im2bw(IX,0.5);subplot(236),imshow(I3);3.效果展示
(1)
(2)
(3)
不过改进空间还是很大,对于蓝色车辆、深蓝色车辆以及图片中蓝色较多的图片,识别效果还是不行。
1 0
- 车牌定位matlab程序:通过hsv彩色分割方式定位车牌
- 车牌定位--颜色分割
- 车牌定位--颜色分割
- 车牌定位--颜色分割
- 车牌定位--颜色分割
- opencv 车牌定位及分割
- 图像车牌识别(车牌定位与分割部分)
- 彩色车牌分割
- 车牌识别之车牌定位
- 车牌识别之一:车牌定位
- 车牌识别之车牌定位
- 车牌识别中的车牌定位
- 车牌识别之车牌定位
- 车牌识别关键技术-车牌定位
- 车牌定位方法——matlab
- MATLAB实现的车牌定位系统
- MATLAB实现的车牌定位系统
- matlab 车牌分割算法
- 自定义ListView控件实现下拉加载更多
- my.cnf配置文件参数解释
- ios即时通讯客户端开发之-mac上安装MySQL
- 微信公众号开发index.php
- ECMAScript 关键字与保留字
- 车牌定位matlab程序:通过hsv彩色分割方式定位车牌
- jQuery的插件
- PHP面向对象 1.7 常见的魔术方法及应用
- redis的简介和配置
- Sring事物的传播行为
- BestCoder Round #65
- 如果看了此文你还不懂傅里叶变换,那就过来掐死我吧【完整版】
- 【Leetcode】Rotate Image
- OC - 第五章 集合 ( 数组、字典、集合 )